Как задать теги для политик AWS IAM с помощью Power Shell

#amazon-web-services #powershell #amazon-iam

Вопрос:

В документации командлета New-IAMPolicy говорится о параметре-Tag:

-Тег <Тег[]> Список тегов, которые вы хотите прикрепить к новой политике, управляемой клиентами IAM. Каждый тег состоит из имени ключа и связанного с ним значения. Дополнительные сведения о маркировке см. в разделе Маркировка ресурсов IAM в Руководстве пользователя IAM.Если какой-либо из тегов является недопустимым или если вы превышаете допустимое максимальное количество тегов, то весь запрос завершается ошибкой и ресурс не создается.

Но есть исключение

  | A parameter cannot be found that matches parameter name 'Tag'.
 

Затем, в поисках определенного командлета для этого, фильтрации по IAM и тегу, я получаю эти:

 Cmdlet          Add-IAMAAResourceTag                               4.1.0.0    AWSPowerShell.NetCore
Cmdlet          Add-IAMRoleTag                                     4.1.0.0    AWSPowerShell.NetCore
Cmdlet          Add-IAMUserTag                                     4.1.0.0    AWSPowerShell.NetCore
Cmdlet          Get-IAMAAResourceTag                               4.1.0.0    AWSPowerShell.NetCore
Cmdlet          Get-IAMRoleTagList                                 4.1.0.0    AWSPowerShell.NetCore
Cmdlet          Get-IAMUserTagList                                 4.1.0.0    AWSPowerShell.NetCore
Cmdlet          Remove-IAMAAResourceTag                            4.1.0.0    AWSPowerShell.NetCore
Cmdlet          Remove-IAMRoleTag                                  4.1.0.0    AWSPowerShell.NetCore
Cmdlet          Remove-IAMUserTag                                  4.1.0.0    AWSPowerShell.NetCore
 

Но ничего, связанного с политикой IAM.

Как это можно сделать? Большое спасибо.

Ответ №1:

Это должно сработать

 $PolicyTag = New-Object Amazon.IdentityManagement.Model.Tag
$PolicyTag.Key = "CreatedBy"
$PolicyTag.Value = "PowerShell"

New-IAMPolicy -Policy "NameofPolicy" -PolicyDocument "PolicyDocument.json" -Tag $PolicyTag