Вы можете создавать пользовательские политики, чтобы дополнять системно-определенные политики и реализовывать более тонкий контроль доступа.
Вы можете создавать пользовательские политики одним из следующих способов:
В этом разделе описывается, как создавать пользовательские политики на странице Permissions > Policies/Roles. Вы также можете создавать пользовательские политики во время авторизации (см. Figure 1).
Figure 1 Creating a policy during authorization

Figure 2 Создание пользовательской политики

Figure 3 Ввод имени политики

Например, при создании пользовательской политики, содержащей действие evs:volumes:create для EVS, укажите область как Project-level services.
Пользовательская политика может содержать действия нескольких сервисов, которые доступны глобально или через региональные проекты. Чтобы определить разрешения, необходимые для доступа как к глобальным, так и к сервисам уровня проекта, создайте две пользовательские политики и укажите область как Global services и Project-level services соответственно.
Параметр | Описание |
|---|---|
Конкретный | Разрешения для конкретных ресурсов. Например, чтобы задать разрешения для бакетов, имена которых начинаются с TestBucket, укажите путь к ресурсу бакета как OBS:*:*:bucket:TestBucket*. ПРИМЕЧАНИЕ:
Формат: "OBS:*:*:bucket:Bucket name". Для ресурсов бакетов IAM автоматически генерирует префикс пути к ресурсу: obs:*:*:bucket:. Чтобы указать путь к конкретному бакету, добавьте в конец bucket name. Также можно использовать символ подстановки (*) для обозначения любого бакета. Например, obs:*:*:bucket:* указывает любой OBS‑бакет.
Формат: "OBS:*:*:object:Bucket name/object name". Для ресурсов объектов IAM автоматически генерирует префикс пути к ресурсу: obs:*:*:object:. Чтобы указать путь к конкретному объекту, добавьте в конец пути ресурса bucket name/object name. Также можно использовать символ подстановки (*) для обозначения любого объекта в бакете. Например, obs:*:*:object:my-bucket/my-object/* указывает любой объект в каталоге my-object бакета my-bucket. |
Все | Разрешения для всех ресурсов. |
Имя | Описание |
|---|---|
Ключ условия | Ключ в элементе Condition заявления. Существуют глобальные и специфичные для сервиса ключи условий. Global condition keys (начинающиеся с g:) доступны для операций всех сервисов, тогда как специфичные для сервиса ключи условий (начинающиеся с аббревиатуры сервиса, например obs:) доступны только для операций соответствующего сервиса. Для получения подробной информации см. руководство пользователя соответствующего облачного сервиса. Ключи условий нечувствительны к регистру. |
Operator | Используется вместе с ключом условия и значением условия для формирования полного условия заявления. |
Value | Используется вместе с ключом условия и оператором, требующим ключевого слова, для формирования полного условия заявления. |
Figure 4 Добавление условия запроса

Global Condition Key | Type | Description |
|---|---|---|
g:CurrentTime | Time | Время получения запроса аутентификации. Время указано в формате ISO 8601, например, 2012-11-11T23:59:59Z. |
g:DomainName | String | Имя учетной записи. |
g:MFAPresent | Boolean | Нужно ли получать токен через MFA authentication. |
g:MFAAge | Number | Срок действия токена, полученного через MFA authentication. Это условие должно использоваться вместе с g:MFAPresent. |
g:ProjectName | String | Имя проекта. |
g:UserId | String | IAM ID пользователя. |
g:UserName | String | Имя пользователя IAM. |
Если изменённое содержимое политики некорректно, проверьте и измените содержимое ещё раз, или нажмите Reset, чтобы отменить изменения.
Вы можете присоединять пользовательские политики к группе пользователей так же, как присоединяете системно-определённые политики. Подробности см. в Creating a User Group and Assigning Permissions.
Figure 5 Создание пользовательской политики

Figure 6 Ввод имени политики

Например, при создании пользовательской политики, содержащей действие evs:volumes:create для EVS, укажите область как Project-level services.
Пользовательская политика может содержать действия нескольких сервисов, которые доступны глобально или через региональные проекты. Чтобы определить разрешения, необходимые для доступа как к глобальным, так и к проектным сервисам, создайте две пользовательские политики и укажите область как Global services и Project-level services соответственно.
Если вы выбираете несколько политик, все они должны иметь одну и ту же область, то есть либо Global services, либо Project-level services. Чтобы определить разрешения, необходимые для доступа как к глобальным, так и к проектным сервисам, разместите разрешения в двух отдельных пользовательских политиках для уточнённого управления доступом.
Figure 7 API actions

Версия каждой пользовательской политики фиксирована на уровне 1.1.
Вы можете присоединить custom policies к user group так же, как присоединяете system-defined policies. Для получения подробностей см. Creating a User Group and Assigning Permissions.