下面的 AWS Powershell SAML 代码在所有 Windows 工作站上都可以正常工作,但在所有 Windows 服务器上,我们都会收到此错误:
Use-STSRole:从 SAML 身份验证生成凭据失败。+ CategoryInfo : InvalidOperation: (Amazon.PowerShe...seSTSRoleCmdlet:UseSTSRoleCmdlet) [Use-STSRole], InvalidOperationException + FullyQualifiedErrorId : Amazon.Runtime.AmazonClientException,Amazon.PowerShell.Cmdlets.STS.UseSTSRoleCmdlet
电源外壳代码:
清除 AWSCredentials
Set-DefaultAWSRegion eu-west-1
$ADFSendpoint=Set-AWSSamlEndpoint -Endpoint " https://adfs.mycompany.com/adfs/ls/IdpInitiatedSignOn.aspx?loginToRp=urn:amazon:webservices " -StoreAs ADFSendpoint
设置-AWSSamlRoleProfile -EndpointName $ADFSendpoint -StoreAllRoles
Set-AWSCredentials -ProfileName "123456789012:role/MyRole"
$RoleArn = "arn:aws:iam::123456789012:role/MyRole"
$CredentialAws = (使用-STSRole -RoleArn $RoleArn -RoleSessionName "MySession").Credentials
$CredentialAws
获取-S3Bucket
这令人抓狂——它们在其他方面的设置相同,并且 ADFS 端点在服务器上的浏览器中仍然可以正常工作,但在 Powershell 中却不行。
这过去常常在服务器上工作,但我无法找出它停止工作的原因。