承認マネージャーでは、ロールはユーザーのカテゴリと、ユーザーが実行する権限を持つタスクを表します。 タスクはグループ化され、ロール定義に割り当てられます。これは、IAzTask オブジェクトの IsRoleDefinition プロパティが Trueに設定されていることによって表されます。 その後、ロール定義を IAzRole オブジェクトに割り当てることができ、ユーザーまたはユーザーのグループがそのオブジェクトに割り当てられます。 タスクとロールの詳細については、「Roles」を参照してください。
次の例は、ロール定義にタスクを割り当て、ロール オブジェクトを作成し、ロール定義をロール オブジェクトに割り当てる方法を示しています。 この例では、ドライブ C のルート ディレクトリに MyStore.xml という名前の既存の XML ポリシー ストアがあり、このストアに Expense という名前のアプリケーションが含まれていること、およびこのアプリケーションに Expense の送信と経費の承認という名前のタスクが含まれていることを前提としています。
' Create the AzAuthorizationStore object.
Dim AzManStore
Set AzManStore = CreateObject("AzRoles.AzAuthorizationStore")
' Initialize the authorization store.
AzManStore.Initialize 2, "msxml://C:\MyStore.xml"
' Create an application object in the store.
Dim expenseApp
Set expenseApp = AzManStore.OpenApplication("Expense")
' Create a task object to act as a role definition.
Dim roleTask
Set roleTask = expenseApp.CreateTask("Expense Admin")
' Set the IsRoleDefinition property of roleTask to True.
roleTask.IsRoleDefinition = True
' Add two tasks to the role definition.
roleTask.AddTask CStr("Submit Expense")
roleTask.AddTask CStr("Approve Expense")
' Save the role definition to the store.
roleTask.Submit
' Create a role object.
Dim role1
Set role1 = expenseApp.CreateRole("Expense Administrator")
' Add the role definition to the role object.
role1.AddTask(roleTask.Name)
' Save the role object to the store.
role1.Submit