2011-07-07 12 views
3

Sitecoreインスタンスのアクセス許可をクリーンアップしており、長年に渡って特定のアクセス権を付与されたユーザーに対して実行しています。今私はすべての権限をロールに入れ、ロールを介してのみ権限を与えたいと思います。Sitecoreのすべてのユーザー固有のアクセス許可の表示と消去

ユーザーに割り当てられた権利を確認する方法はありますか?私はこれを手動で修正できる十分な数のユーザーを持っていますが、セキュリティビューアにはユーザー権利とロールの権利からの累積アクセス許可が表示されます。

+1

これは興味深い質問です。 __Securityフィールドに特定のユーザーIDを確認するためのクエリを書くことができます。私はこれを試してみよう... – Bryan

答えて

4

クエリアイデアは、実際に働きました。だから、Xpath Builder(Dev Centerで)を使ってこれを行うことができます。それは少し遅くなることが、あなたにアイテムを与えます:

/サイトコア/コンテンツ/ myRoot // * [(@__セキュリティ、「ユーザ名」)を含んでいる]私はいくつかの後にそこにこれを投げると考えました

+0

涼しいアイデア...私はそれを取ってSitecore Rocksでテストし、同様に働いた。 IDとして@@ IDを選択し、名前として@@ Nameを、パスとして@@ Pathを、/ sitecore/content/homeから@__Securityに変更します。// * [contains(@__ Security、 'xxxx')]; –

+0

これは私のニーズにとって最も簡単な解決策になりました。ありがとう! – JoshBaltzell

2

Josh、 ちょっとしたスクリプトをリリースしました。このスクリプトは、__securityフィールドのすべての値を表示し、それらをすべてリセットできるようにします。特定のユーザーのためにリセットする必要があります。

http://seankearney.com/post/Sitecore-Security-Report-and-Reset.aspx

+0

あなたのニーズに合わせてこれをカスタマイズするには、あなたのユーザーが値の中に「含まれている」かどうかを確認するために56行目を修正することができます。 –

+0

これは素晴らしいです。私は今日または明日それを試し、あなたに信用を与えるために戻ってきます。ありがとう! – JoshBaltzell

1

Rocksでテスト。 (ブライアンに私のコメントで述べたように)あなたはサイトコアの岩からセキュリティに関するレポートを作成できます

select @@ID as ID, @@Name as Name, @@Path as Path, @__Security from /sitecore/content/home//*[contains(@__Security,'xxxx')];

あなたは、あまりにも、クエリとセキュリティ分野をリセットすることができます!

update set @__Security = "" from /sitecore/content/home//*[contains(@__Security,'xxxx')];

関連する問題