Пользовательское определение роли Azure RM со специальными AssignableScopes - PullRequest
0 голосов
/ 14 ноября 2018

Я пытаюсь создать пользовательское определение роли Azure RM, которое предназначено для некоторых групп ресурсов внутри одной подписки.Я не хочу предоставлять доступ ко всем подпискам или только к одной группе ресурсов, и я не могу указать список групп ресурсов, потому что некоторые из них еще не созданы.Я хочу предоставить доступ только к некоторому подмножеству групп ресурсов подписки.

Для этого я использую командлет PowerShell

New-AzureRmRoleDefinition -InputFile .\new-role.json 

Где JSON

{
  "Name": "RoleAssignmentsWriter",
  "Description": "Allow to perform role assignment",
  "Actions": [
    "Microsoft.Authorization/roleAssignments/write"
  ],
  "AssignableScopes": [
    "/subscriptions/xxxxx-xxxxx-xxxx-xxx-xxxxxxx/resourceGroups/prefix*"
  ]
} 

Где префикс - префикссуществующих и имен групп ресурсов.

Работает, если AssignableScopes: [“/subscriptions/xxxxx-xxxxx-xxxx-xxx-xxxxxxx”] - полная подписка или AssignableScopes: ["/subscriptions/xxxxx-xxxxx-xxxx-xxx-xxxxxxx/resourceGroups/ResourceGroupName”]

Но не работает, если я укажу AssignableScopes: ["/subscriptions/xxxxx-xxxxx-xxxx-xxx-xxxxxxx/resourceGroups/prefix*"] или даже AssignableScopes: ["/subscriptions/xxxxx-xxxxx-xxxx-xxx-xxxxxxx/resourceGroups/*"],

Одна важная вещь заключается в том, что я хочу создать определение роли для несуществующих групп ресурсов, они будут созданы позже.

Вопрос: можно ли указать AssignableScopes только длякакое-то подмножество групп ресурсов подписки?Может быть, я могу использовать какой-то подстановочный знак в AssignableScopes?Простая звездная отметка не работает.Или, может быть, я могу использовать теги группы ресурсов или что-то еще?

Заранее большое спасибо.

1 Ответ

0 голосов
/ 14 ноября 2018

возможно ли указать AssignableScopes только для некоторого подмножества групп ресурсов подписки?Может быть, я могу использовать какой-то подстановочный знак в AssignableScopes?

AFAIK, вы не можете использовать подстановочный знак в assignableScopes, команда New-AzureRmRoleDefinition powershell по существу вызывает Role Definitions - Create Or UpdateREST API, assignableScopes принимает только три типа, обратитесь к этой ссылке .

enter image description here

Если вы хотите указать AssignableScopesтолько для некоторого подмножества групп ресурсов подписки, вам нужно указать их одну за другой в assignableScopes, например

 "assignableScopes": [
      "subscriptions/{subscriptionId}/resourceGroups/myresourcegroup1",
      "subscriptions/{subscriptionId}/resourceGroups/myresourcegroup2",
      "subscriptions/{subscriptionId}/resourceGroups/myresourcegroup3",
    ]

Или, может быть, я могу использовать теги группы ресурсов или что-то еще?

Нет, все возможные свойства перечислены в документе REST API, других нет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...