2016-11-09 12 views
0

Как включить идентификатор в токен доступа с использованием DotNetOpenAuth? В частности, заявление по электронной почте.включают в себя идентификационную информацию в токене доступа

Понятно, как сделать заявку на масштаб (так что в ответе это будет что-то вроде scope = http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress:[email protected]), но это кажется мне неправильным использованием областей. Я использую grant_type = пароль.

Другой способ - сделать дополнительный запрос UserInfo из клиентского приложения через протокол OpenID Connect, но я не хочу никаких дополнительных запросов.

В идеале мне нужно добавить свойство класса AccessToken или поместить его в свой ресурс ExtraData.

ответ

0

Это может быть сделано в DNOA 4.1+, такой функции в DNOA 4.0 нет.

Можно добавить собственные значения в метод OAuth2AuthorizationServer.CreateAccessToken к свойству ExtraData. Затем эти значения могут быть получены либо из StandardAccessTokenAnalyzer.DeserializeAccessToken, либо для переопределения ResourceServer.GetAccessToken.