Создайте пользователя в AWS Workspaces с API
При создании рабочей области я могу создать одного или нескольких пользователей, предоставляющих электронную почту и другую информацию.
Я пытаюсь сделать то же самое, используя AWS API или boto3 в Python. Ни один из WorkSpaces и DirectoryService в boto3 не обеспечивают способ создания пользователя в AWS Simple AD.
Как программно создать пользователя в AWS Simple AD?
1 ответ
На самом деле, похоже, у вас получится это сделать. Ознакомьтесь с документацией по API для рабочих документов. Он говорит: "Создает пользователя в каталоге Simple AD или Microsoft AD".
https://docs.aws.amazon.com/workdocs/latest/APIReference/API_CreateUser.html
POST /api/v1/users HTTP/1.1
Authentication: AuthenticationToken
Content-type: application/json
{
"EmailAddress": "string",
"GivenName": "string",
"OrganizationId": "string",
"Password": "string",
"StorageRule": {
"StorageAllocatedInBytes": number,
"StorageType": "string"
},
"Surname": "string",
"TimeZoneId": "string",
"Username": "string"
}
boto3 doc:https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/workdocs.html
Простой ответ заключается в том, что вы не можете создать пользователя "программно". Вы даже не можете создать просто пользователя в Simple AD, вы можете создать его только при создании рабочей области.
Чтобы создать пользователей AD, вам необходимо запустить экземпляр Windows EC2 и добавить его в домен каталога AWS. Затем установите средства управления AD в этом экземпляре и используйте его для создания / управления пользователями. Подробнее об этом можно прочитать здесь, https://docs.aws.amazon.com/directoryservice/latest/admin-guide/simple_ad_how_to.html
Вы можете запустить скрипт powershell в этом экземпляре EC2 для автоматизации. Может быть, даже создать лямбда-функцию для ее запуска.
Ответ от @JapethMarvel, вероятно, наиболее близок к тому, что вы ищете, но он зависит от множества условий, которые я задокументировал в своем комментарии.
Стоит отметить, что это сообщение в блоге Amazon демонстрирует лямбда-выражение, которое выполняет вызовы API напрямую в службу каталогов с помощьюldap3
библиотека. Я не исследовал это подробно, но похоже, что таким образом можно управлять пользователями. Конечно, это решение имеет другие ограничения, поскольку система (или Lambda), в которой выполняется этот скрипт, должна иметь доступ к Каталогу (а не только к API AWS). Если этот каталог является частным, Lambda необходимо предоставить доступ к VPC (например, путем его подключения).
Это не позволяет нам использовать его, например, в пользовательском поставщике ресурсов CloudFormation без дополнительных уровней сложности. Например, возможно, чтобы ресурс CF создал лямбда-выражение, привязанное к VPC, для прокси-запросов к Справочнику.