Thinktecture IdSrv - задайте използваното име на доставчик на идентичност като иск

Използвам страхотните ThinkTecture Identity (IdSrv) и Authorization (AS) сървъри.

Имам настройка на IdSrv с множество доставчици на идентичност (Facebook, ADFS, Google и т.н.).

Работя с демонстрацията на потока и всичко работи перфектно, в момента си играя с ClaimsTransformer чрез app.UseClaimsTransformation(new ClaimsTransformer().Transform); в startup.cs.

Бих искал да знам от кой доставчик на идентичност се предоставят исканията, в момента единствените искове, изпратени от AS, са по-долу:

{iss: as}
{aud: users}
{nbf: 1399569317}
{exp: 1399572917}
{client_id: implicitclient}
{scope: read}
{sub: 6435621316}

Темата в горния пример е Facebook акаунтът на потребителя, който се е идентифицирал, но лесно може да бъде mydomain\someusr.

Има ли някакъв начин да получа името на доставчика на самоличност, използвано като иск или по друг начин?

Трябва да знам това, тъй като бих искал да имам връзка за промяна на паролата на потребителя, ако потребителите са влезли, използвайки собствения ThinkTecture IdentityServer като доставчик на идентичност (потребителско име/парола - мога да се интегрирам към база данни за потребител/парол чрез IUserRepository хранилище), очевидно това няма да се покаже, ако потребител е влязъл през facebook/google и т.н.


person morleyc    schedule 08.05.2014    source източник


Отговори (1)


Доминик от ThinkTecture любезно отговори на този въпрос:

Опитайте да зададете filterIncomingClaims на false в web.config

https://github.com/thinktecture/Thinktecture.AuthorizationServer/blob/master/source/WebHost/Web.config

След като беше направено, се появиха допълнителните искове.

person morleyc    schedule 10.05.2014