gpt4 book ai didi

asp.net-mvc - 如何从 Azure ACS 获取电子邮件和姓名?

转载 作者:行者123 更新时间:2023-12-02 05:23:08 25 4
gpt4 key购买 nike

我正在使用 Azure ACS,并且我一直在寻找从 SAML 2.0 响应或其他内容中获取电子邮件和姓名的方法。

但我没有看到任何选项,我将用户重定向到 localhost:8000/acc/completesigninup/

我有来自 FormCollection 对象的 XML,我在 xml 中看到了电子邮件和名称,但我不知道如何获取它。 Identity dll 中是否包含一个解析器来获取该信息?

最佳答案

既然您提到了 FormCollection,我假设您正在使用 .Net 在 Windows 中进行编程。那么最简单的事情就是使用 WIF ( http://msdn.microsoft.com/en-us/security/aa570351 )。

这样您就不必解析 token 、验证它、设置用户身份,然后创建代表 token 信息的 cookie。

WIF,一旦您安装并配置了它(它的 SDK 附带了一个 Visual Studio 扩展来执行此操作),它将自动为您执行这些操作。

您可以查看一些使用 WIF 和 MVC 的示例。一个示例是带有 MVC3 的 ACS,您可以在以下位置找到它:

http://msdn.microsoft.com/en-us/library/hh127794.aspx

在 Controller 中执行此操作后,您可以访问用户的身份并获取声明值,例如:

((IClaimsPrincipal)HttpContext.User).Identity.Claims.FirstOrDefault(c => c.ClaimType == ClaimTypes.Email)

请注意,由于 Windows Live 隐私政策,ACS 中的 Windows Live IDP 不会将用户的电子邮件地址作为声明提供。

关于asp.net-mvc - 如何从 Azure ACS 获取电子邮件和姓名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7548872/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com