本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
AD FS 声明规则和 SAML 设置
ActiveDirectory AWS Managed Services (AMS) 的联合服务 (AD FS) 声明规则和 SAML 设置
有关如何安装和配置 AD FS 的详细 step-by-step说明,请参阅使用 Windows Active Directory、ADFS 和 SAML 2.0 启用与 AWS 的联
ADFS 声明规则配置
如果您已经有 ADFS 实现,请进行以下配置:
依赖方信任
索赔规则
信赖方信任和索赔规则的步骤是从 “使用 Windows Active Directory、AD FS 和 SAML 2.0 为 AWS 启用联合身份
索赔规则:
Nameid:每篇博客文章的配置
RoleSessionName: 按如下方式进行配置
声明规则名称:
RoleSessionName属性存储:
Active DirectoryLDAP 属性:
SAM-Account-Name发出的索赔类型:
https://aws.amazon.com/SAML/Attributes/RoleSessionName获取 AD 组:每篇博客文章
的配置 角色声明:按如下方式进行配置
c:[Type == "http://temp/variable", Value =~ "(?i)^AWS-([^d]{12})-"]=> issue(Type = "https://aws.amazon.com/SAML/Attributes/Role", Value = RegExReplace(c.Value, "AWS-([^d]{12})-", "arn:aws:iam::$1:saml-provider/customer-readonly-saml,arn:aws:iam::$1:role/"));
Web 控制台
您可以使用以下链接访问 AWS Web 控制台,将其[ADFS-FQDN]替换为 ADFS 实施的 FQDN。
https://[ADFS-FQDN]/adfs/ls/IdpInitiatedSignOn.aspx
您的 IT 部门可以通过组策略将上述链接部署到用户群中。
使用 SAML 访问 API 和 CLI
如何使用 SAML 配置 API 和 CLI 访问权限。
python 软件包来自以下博客文章:
脚本配置
使用 Notepad++ 将默认区域更改为正确的区域
使用 Notepad++,为测试和开发环境禁用 SSL 验证
使用 Notepad++ 配置 idpentryurl
https://[ADFS-FDQN]/adfs/ls/IdpInitiatedSignOn.aspx?loginToRp=urn:amazon:webservices
Windows 配置
以下说明适用于 python 软件包。生成的证书将在 1 小时内有效。
安装 AMS CLI:
下载您的云服务交付经理 (CSDM) 提供的 AMS 可发行文件 zip 文件并解压缩。
提供了几个目录和文件。
根据您的操作系统,打开托管云分发文件-> CLI-> Windows 或托管云发行文件-> CLI-> Linux/macOS 目录,然后:
对于 Windows,请执行相应的安装程序(此方法仅适用于 Windows 32 或 64 位系统):
32 位: ManagedCloudAPI_x86.msi
64 位: ManagedCloudAPI_x64.msi
对于 Mac/Linux,请执行名为 MC_CLI.sh 的文件。你可以通过运行这个命令来做到这一点:
sh MC_CLI.sh. 请注意,amscm 和 amsskms 目录及其内容必须与 MC_CLI.sh 文件位于同一个目录中。如果您的公司证书是通过与 AWS 的联合身份验证(AMS 默认配置)使用的,则必须安装可以访问您的联合身份验证服务的凭证管理工具。例如,您可以使用此 AWS 安全博客如何使用 SAML 2.0 和 AD FS 实现联合 API 和 CLI 访问来
帮助配置您的凭证管理工具。 安装完成后,运行
aws amscm helpaws amsskms help并查看命令和选项。
下载所需的 SAML 脚本
下载到 c:\aws\scripts
-
下载到 c:\aws\downloads
使用 PowerShell,安装 PIP
<pythondir>。 \ python.exe c:\aws\downloads\get-pip.py
使用 PowerShell,安装 boto 模块
<pythondir\ scripts>pip 安装启动器
使用 PowerShell、安装请求模块
<pythondir\ scripts>pip 安装请求
使用 PowerShell、安装请求安全模块
<pythondir\ scripts>pip 安装请求 [安全]
使用 PowerShell,安装 beautifulsoup 模块
<pythondir\ scripts>pip 安装 beautifulsoup4
使用 PowerShell,在用户配置文件中创建一个名为.aws 的文件夹 (%userprofile%\ .aws)
mkdir .aws
使用 PowerShell,在.aws 文件夹中创建凭证文件
新物品凭证类型文件 —force
凭证文件不能有文件扩展名
文件名必须全部为小写并具有名称凭证
使用记事本打开凭证文件并粘贴以下数据,指定正确的区域
[default] output = json region = us-east-1 aws_access_key_id = aws_secret_access_key =使用 PowerShell SAML 脚本和登录
<pythondir>。 \ python.exe c:\aws\scripts\samlapi.py
用户名:[用户名] @upn
选择你想担任的角色
Linux 配置
生成的证书将在 1 小时内有效。
使用 WinSCP 传输 SAML 脚本
使用 WinSCP 传输根 CA 证书(对于测试和开发,请忽略)
将 ROOT CA 添加到受信任的根证书中(对于测试和开发,请忽略)
$ openssl x509-inform der-in [certname] .cer out certificate.pem(测试和开发时忽略)
将 certificate.pem 的内容添加到/etc/ssl/certs/ca-bundle.crt 文件的末尾(对于测试开发人员来说忽略)
在 home/ec2-user 5 中创建.aws 文件夹
[default] output = json region = us-east-1 aws_access_key_id = aws_secret_access_key =使用 WinSCP 将证书文件传输到.aws 文件夹
安装 boto 模块
$ sudo pip 安装启动程序
安装请求模块
$ sudo pip 安装请求
安装漂亮的汤模块
$ sudo pip 安装 beautifulsoup4
将脚本复制到 home/ec2-user
设置所需的权限
执行脚本:samlapi.py