如何从一个ACS名称空间访问具有另一个ACS名称空间的服务标识

时间:2013-06-06 00:12:53

标签: azure acs acs-serviceidentity

我有一个信任ACS命名空间A的依赖方应用程序,我在ACS命名空间B中有服务标识,我希望服务标识能够调用那些依赖方应用程序,以便命名空间A与命名空间B进行通信以获取认证

有没有办法实现这个,我无法找到任何与此相关的文件,如果有人可以指导我一些关于我们如何实现这一点的文档会很棒。

由于

2 个答案:

答案 0 :(得分:1)

这是可行的,但有点复杂。您需要将命名空间A作为RP添加到命名空间B,并将命名空间B作为IdP添加到命名空间A(两者都可以通过WS-Federation元数据添加)。你还需要一些特殊的规则。

在命名空间B中,您需要一个Issuer ACS规则(如果使用管理服务,则为LOCAL AUTHORITY),NameID SIName,通过。在命名空间A中,您需要一个Issuer NamespaceB规则,NameID SIName,传递(您也可以在这里传递所有NameID)。

设置完成后,流程如下所示。

  1. 客户端使用OAuth2协议从名称空间B请求令牌。此请求的RP是NamespaceA。
  2. 客户端收到此令牌并将其呈现给命名空间A.此请求的RP是您想要的实际RP。
  3. 假设一切都配置正确,客户端在(2)中收到的令牌将授予其访问您的RP的权限。

答案 1 :(得分:0)

我真的不明白你在问什么!

ACS是passive服务!没有像Service Identities to be able to call those Relying Party applications这样的过程! 服务标识是一种对活动客户端进行身份验证的方法 - 这些服务器端进程不会调用用户交互。

如果您希望依赖方X [IdP通过ACS命名空间A] 服务器进行身份验证 ACS名称空间B中的服务标识标识的旁边代码,那么您只需要在* 依赖方X 和两个ACS命名空间之间建立信任关系。

您不能将ACS名称空间用作另一个ACS名称空间的标识提供程序。这就是我理解你想要实现的目标。