每当我使用或生成ClaimIdentities时,我都会遇到这些模式Urls。 在MS Docs中,微软说这些URL具有语义,但是为什么它们使用URL而不是类型名称呢?实际上,其中有些是这样做的,即SecurityStamp的类型为:
"AspNet.Identity.SecurityStamp"
这很有意义:这是对值的描述,而不是实型。
但是这些网址呢?
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name"
它们是否指向某个页面/定义?
答案 0 :(得分:0)
它们基本上是预定义的声明类型。您可以使用声明类型类将声明设置为这些预定义类型之一。这意味着您不必使用魔术字符串,而可以使用针对特定声明类型设计的预设类型,这使查询声明更加容易。
https://msdn.microsoft.com/en-us/library/system.security.claims.claimtypes%28v=vs.110%29.aspx
https://msdn.microsoft.com/en-us/library/microsoft.identitymodel.claims.claimtypes_members.aspx