スクリプトでのアクセス許可の定義の委任
Active Directory に格納されている承認ポリシー ストアの管理を委任できます。 管理は、ストア、アプリケーション、またはスコープ レベルでユーザーとグループに委任できます。
各レベルには、管理者と閲覧者の一覧があります。 ストア、アプリケーション、またはスコープの管理者は、委任されたレベルでポリシー ストアの読み取りと変更を行うことができます。 閲覧者は委任されたレベルでポリシー ストアを読み取ることができますが、ストアを変更することはできません。
アプリケーションの管理者または閲覧者であるユーザーまたはグループも、そのアプリケーションを含むポリシー ストアの委任されたユーザーとして追加する必要があります。 同様に、スコープの管理者または閲覧者であるユーザーまたはグループは、そのスコープを含むアプリケーションの委任されたユーザーとして追加する必要があります。
スコープの管理を委任するには
- スコープを含む AzAuthorizationStore オブジェクトの AddDelegatedPolicyUser メソッドを呼び出して、スコープを含むストアの委任されたユーザーの一覧にユーザーまたはグループを追加します。
- スコープを含む IAzApplication オブジェクトの AddDelegatedPolicyUser メソッドを呼び出して、スコープを含むアプリケーションの委任されたユーザーの一覧にユーザーまたはグループを追加します。
- IAzScope オブジェクトの AddPolicyAdministrator メソッドを呼び出して、スコープの管理者の一覧にユーザーまたはグループを追加します。
Note
XML ベースのポリシー ストアは、どのレベルでも委任をサポートしていません。
Active Directory に格納されている承認ストア内のスコープに、承認規則または承認規則を含むロール定義を含むタスク定義が含まれている場合、スコープを委任することはできません。
次の例は、アプリケーションの管理を委任する方法を示しています。 この例では、指定した場所に既存の Active Directory 承認ポリシー ストアがあり、このポリシー ストアに Expense という名前のアプリケーションが含まれており、このアプリケーションにビジネス ルール スクリプトを含むタスクが含まれないことを前提としています。
' Create the AzAuthorizationStore object.
Dim AzManStore
Set AzManStore = CreateObject("AzRoles.AzAuthorizationStore")
' Initialize the authorization store.
AzManStore.Initialize 2, _
"msldap://CN=MyStore,CN=Program Data,DC=authmanager,DC=com"
' Create an application object in the store.
Dim expenseApp
Set expenseApp= AzManStore.OpenApplication("Expense")
' Add a delegated policy user to the store.
AzManStore.AddDelegatedPolicyUserName("ExampleDomain\\UserName")
' Add the user as an administrator of the application.
expenseApp.AddPolicyAdministratorName("ExampleDomain\\UserName")
' Save changes to the store.
AzManStore.Submit