我使用了令人敬畏的ThinkTecture身份(IdSrv)和授權(AS)服務器。Thinktecture IdSrv - 將使用的身份提供者名稱設置爲聲明
我有多個身份提供商(Facebook,ADFS,Google等)的IdSrv設置。
我的流程演示正在運行,並且一切正常,我目前正在通過app.UseClaimsTransformation(new ClaimsTransformer().Transform);
在startup.cs
中與ClaimsTransformer一起玩。
我想知道哪個身份提供者通過,提供的權利要求目前由AS發送的訂單隻要求低於:
{iss: as}
{aud: users}
{nbf: 1399569317}
{exp: 1399572917}
{client_id: implicitclient}
{scope: read}
{sub: 6435621316}
在上面的例子中的主體是Facebook帳戶的用戶是誰確定自己,但它可以很容易地mydomain\someusr
。
有沒有什麼辦法可以得到身份提供者的名稱用作索賠或其他?
我需要知道這一點,因爲如果用戶使用本地ThinkTecture IdentityServer作爲身份提供者登錄(用戶名/密碼 - 我可以集成到用戶/密碼中),我想要鏈接來更改用戶密碼通過IUserRepository
倉庫數據庫),顯然這將不顯示,如果用戶曾通過Facebook登錄/谷歌等