3
我使用Adal和Azure Active Directory,我需要通過自定義OwinMiddleware添加額外聲明。 當我向該主體添加聲明時,我可以在當前請求中訪問它們。但是在頁面刷新之後,聲明就消失了。更新ClaimPrincipal中的聲明
我認爲Owin處理索賠的序列化並將其放入cookie本身,但似乎並非如此。
我添加的權利要求如下:
var claimsIdentity = (ClaimsIdentity) ClaimsPrincipal.Current.Identity;
if (!claimsIdentity.IsAuthenticated) return;
var identity = new ClaimsIdentity(claimsIdentity);
var currentTenantClaim = GetTenantClaim();
if (currentTenantClaim != null)
claimsIdentity.RemoveClaim(currentTenantClaim);
claimsIdentity.AddClaim(new Claim(ClaimTypes.CurrentTenantId, id));
context.Authentication.AuthenticationResponseGrant = new AuthenticationResponseGrant
(new ClaimsPrincipal(identity), new AuthenticationProperties {IsPersistent = true});
如何堅持到cookie中的新的權利要求任何想法?