3

.net4.5でクレームベイズド認証をいじっています。これはかなりうまくいきます。しかし、うまくいけば小さな問題が発生しました。

名前クレームタイプを設定すると、ID名になるはずだと思いました

ident.NameClaimTypeの値がClaimTypes.Nameと同じであることを確認しました。どちらもhttp://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameです。

私は新しい主張を設定しました。私が見ることができるのは、アイデンティティの主張の一部です。しかし、Identity.Nameはまだ空です。

私は何が間違っているのですか?

  ClaimsIdentity ident = (ClaimsIdentity)incomingPrincipal.Identity;

  ident.AddClaim(new Claim(ClaimTypes.Name, resourceName));
4

1 に答える 1

3

クレームIDが設定されていないときに同じ問題が発生しましたAuthenticationType。コンストラクターにを渡すと、AuthenticationTypeそれは機能しました。ClaimsIdentity

于 2013-01-20T12:25:52.277 に答える