下面是如何为不属于组织的外部客户AWS账户使用AWS SSO的最佳实践:
在AWS SSO中创建一个称为'ExternalClient”(或任何有意义的名称)的账户。在此账户中,创建一个应用程序程序和一个用户组,用于向外部客户授予登录到AWS账户的权限。
在此外部客户的AWS账户中创建一个IAM角色并将其与AWS SSO的应用程序程序关联。该角色将允许AWS SSO授予外部客户以AWS账户中创建的身份登录。
为外部客户提供用于在其AWS账户中创建的IAM用户身份进行登录的凭证。使用以下代码示例在AWS CLI中创建一个临时凭证:
aws sso-login --profile ExternalClient --region us-east-1
其中,'ExternalClient”是在第1步中创建的AWS SSO配置文件的名称,'us-east-1”是配置文件的AWS区域。此命令将生成一个URL,用户将被重定向到此URL以进行身份验证,并生成一个短暂的AWS凭证。将此凭证提供给用户,以允许他们使用AWS SSO登录到其AWS账户。
aws organizations enable-aws-service-access --service-principal=sns.amazonaws.com
这将启用外部客户在其AWS账户中创建IAM用户身份所需的必要访问权限。
请注意,对于外部客户AWS账户的安全性和控制