【发布时间】:2017-11-03 22:37:22
【问题描述】:
按照https://docs.microsoft.com/en-us/azure/active-directory/active-directory-saas-amazon-web-service-tutorial 中概述的步骤以及 Dirk_Nelson 在 cmets 中指出的那样:
错误:您的请求包含无效的 SAML 响应。要注销, 点击这里。
在浏览了 AWS 的文档之后,我发现了这篇文章: http://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_saml.html#troubleshoot_saml_invalid-response
属性名称 rolesessionname 更改为 RoleSessionName
属性名称角色更改为角色
对于 RoleSessionName 和 Role,命名空间必须为 https://aws.amazon.com/SAML/Attributes
在 Azure 门户中进行这些更改后,我能够 身份验证成功。
虽然我已经有了这个。或者,亚马逊故障排除页面说这是由于角色缺少 ARN 的属性值。
<AttributeValue>arn:aws:iam::account-number:role/role-name1,arn:aws:iam::account-number:saml-provider/provider-name</AttributeValue>
我也试过这个,但没有运气。还有什么可能遗漏的吗?
最终目标是使用存储在 Azure AD 中的用户通过 Amazon Cognito 登录,这似乎是一种解决方案,除非我将其解释为相反的路线我需要什么。
【问题讨论】:
-
看起来 SAML 响应中缺少属性。没有示例 SAML 响应就很难调试。
-
请注意,SAML 响应可能包含敏感数据;如果您选择这样做,请在发布前将其删除。
-
似乎我需要将 Azure AD 中的角色绑定到用户(由于某种原因,我无法让组工作)。我现在可以成功地从 myapps.microsoft.com 转到 AWS,但是反过来呢?当我在 AWS 中时,我复制了 IAM 用户登录链接,但它不起作用。我是否需要设置用户配置才能使其正常工作?
-
反向是什么意思?您的意思是您正在尝试使用 AWS IAM 链接使用 Azure 用户登录?那是行不通的。
-
是的,我的 Web 应用使用了 Cognito,它与 Aws IAM 挂钩,但我也希望能够通过它对 Azure Ad 用户进行身份验证。
标签: php azure amazon-web-services