【发布时间】:2012-12-09 03:59:21
【问题描述】:
我什至不确定这是否可行,但我无法在任何 kb、帮助或文档中找到明确的答案。
我有一个通过 ACS 保护的 WebAPI。应用程序使用服务身份通过 ACS 和我的 WebAPI 进行身份验证以允许访问。我想做的是为服务身份提出声明以识别个人身份。例如,服务标识 A 提供类型和 id,服务标识 B 为相同的声明类型提供不同的值,然后我的 WebAPI 可以根据声明值授权特定调用。
目前,我通过使用输出声明和通过 ACS 门户设置声明值的规则组实现了这一点,但是规则组应用于访问依赖应用程序(我的 WebAPI)的所有服务身份,我需要的是拥有该服务每个身份都有不同的声明值。
由于所有通信都是服务到服务,因此我计划使用 ACS 而不是其他身份提供商,例如 Live/Microsoft Account 或 Google。但是目前我能得出的唯一结论是实施我自己的自定义 STS 来提供声明值。
我希望我已经清楚地解释了我的场景,任何人都可以提供帮助,我如何为各个服务标识设置声明值,还是应该以不同的方式这样做?
谢谢
安德鲁
【问题讨论】:
-
您没有添加其他声明。仍然只有一种索赔类型。是否可以添加额外的声明或者“nameidentifier”是唯一的一个 ACS 服务标识支持?
标签: azure identity claims-based-identity acs