Поделиться через


Группирование задач по ролям в скрипте

В диспетчере авторизации роль представляет категорию пользователей и задачи, которые им разрешено выполнять. Задачи группируются и назначаются определению роли, представленному объектом IAzTask со свойством IsRoleDefinition , равным True. Затем определение роли может быть назначено объекту IAzRole , а затем пользователям или группам пользователей назначается этот объект. Дополнительные сведения о задачах и ролях см. в разделе Роли.

В следующем примере показано, как назначить задачи определению роли, создать объект роли и назначить определение роли объекту роли. В примере предполагается, что в корневом каталоге диска C имеется хранилище политик XML с именем MyStore.xml, что это хранилище содержит приложение Expense и что это приложение содержит задачи с именами Submit Expense и Approve 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