Мы пытаемся поместить журнал в нашу базу данных для временного хранения access_tokens с сервера идентификации для целей отладки. Но я не могу ничего найти. Я использую это для аутентификации пользователей
publi c class UserService: UserServiceBase {
private readonly IUserRepository _userRepository;
public UserService(IUserRepository _userRepository)
{
this._userRepository = _userRepository;
}
public override Task AuthenticateExternalAsync(ExternalAuthenticationContext context)
{
return base.AuthenticateExternalAsync(context);
}
public override async Task AuthenticateLocalAsync(LocalAuthenticationContext context)
{
var pass = fNewEncryptText(context.Password, ConnectionStrings["LM_Authentication"].ConnectionString).Trim();
var user = await _userRepository.GetAsync(context.UserName, pass);
if (user == null)
{
context.AuthenticateResult = new AuthenticateResult("Incorrect credentials");
return;
}
context.AuthenticateResult = new AuthenticateResult(context.UserName, context.UserName);
}
}
После получения правильных учетных данных, идентификатора клиента и его секрета. Нам нужно получить access_token, сгенерированный Identity Server, кстати, мы все еще используем IdentityServer3.
{
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6ImhzSHM4d0JQNGJWTlZLR3hCSWhidWEwWlU0dyIsImtpZCI6ImhzSHM4d0JQNGJWTlZLR3hCSWhidWEwWlU0dyJ9.eyJpc3MiOiJodHRwOi8vbG9jYWxob3N0OjEzNDciLCJhdWQiOiJodHRwOi8vbG9jYWxob3N0OjEzNDcvcmVzb3VyY2VzIiwiZXhwIjoxNTc5NTA3NjU5LCJuYmYiOjE1Nzk1MDU4NTksImNsaWVudF9pZCI6ImxhbmRtYXJrQVBJIiwic2NvcGUiOlsib2ZmbGluZV9hY2Nlc3MiLCJvcGVuaWQiLCJwcm9maWxlIl0sInN1YiI6ImFkbWluIiwiYXV0aF90aW1lIjoxNTc5NTA1ODU4LCJpZHAiOiJpZHNydiIsImFtciI6WyJwYXNzd29yZCJdfQ.AVoyCoayKC82t7coOHWkl0uPu7Uofvcq281VAfk0z919pKCWAQ389ls6AH2AKBgjfJhaNVOkGw9nz98VFkFJPt0RnazEty9KXsX3Ixa8OHP_KzkWyVGQmO0aWfkYswPsGxe3WpI1TudXuP4aummdrNuycWByMOys6acJxXTVy8iM0Blt9GHy3hnCy9Kz--xjbCi3sOvaPLK32JAYWAZKH_MZeHePCBoLnwpvh4ZDYX0jxp06uZvpp3HS5b5rxb7pToEj9ljUEWZ9SiDsXhIAW6mMNadbDDEvv1KJ-RrFQMnyxwpDZTxcVVaPEvgqaZP3daVlevpHeMqGz-gZXXuO1A",
"expires_in": 1800,
"token_type": "Bearer",
"refresh_token": "7659bad15a3215ba29fa5d6dfd68a8ed"
}
Есть ли способ получить тег access_token?
Также есть ли способ отладки «Сообщение»: «В этом запросе отказано в авторизации». когда они вводят неверный access_token? Нам нужно временно сохранить это и в нашей базе данных.