Ошибка IDX10500 после успешного сброса пароля через политику B2C - PullRequest
0 голосов
/ 20 сентября 2018

Мы успешно внедрили Azure AD B2C для проверки подлинности в нашем веб-приложении, и теперь я пытаюсь использовать встроенную политику для сброса пароля.Веб-приложение успешно фиксирует код ошибки (AADB2C90118), который выдается, когда пользователь щелкает ссылку «Забыл пароль», перенаправляя его на метод Account / ResetPassword, который правильно выполняет вызов, отправляя пользователя через функцию сброса пароля.

Пользователь проходит проверку и может изменить свой пароль, но когда ответ публикуется обратно в веб-приложение, мы в конечном итоге в событии AuthenticationFailed со следующим исключением:

{"IDX10500: сбой проверки подписи. Не удалось разрешить SecurityKeyIdentifier: 'SecurityKeyIdentifier \ r \ n (\ r \ n IsReadOnly = False, \ r \ n Count = 1, \ r \ n Предложение [0] = System.IdentityModel.Tokens.NamedKeySecurityKeyIdentifierClause \ r \ n) \ r \ n ', \ ntoken:' {\ "typ \": \ "JWT \", \ "alg \": \ "RS256 \", \ "kid \": \"X5eXk4xyojNFum1kl2Ytv8dlNP4-c57dO6QGTVBwaNk \"} {\ "ехр \":. 1537473897, \ "НСБ \": 1537470297 \ "вер \": \ "1,0 \", \ "ИСС \": \ "https://login.microsoftonline.com/1f0535de-b375-48bf-8bc8-d9e0b6ff185a/v2.0/\",\"sub\":\"454bd9a9-7a7c-4e7f-9535-213e07408d14\",\"aud\":\"f3afd0e2-9f6e-435a-918c-e8c542f9f5ad\",\"nonce\":\"636730670637853311.OTk5YTlhMWYtOTQyYi00ZDBjLTg0ZjItZDExMjI5MTQ5NzU1ZTY5MzZjODgtMmE2Yi00NmQ0LTg0MTYtOTc5YTJjNWEzOGQ4\",\"iat\":1537470297,\"auth_time\":1537470297,\"emails\":[\"ls1grrrl@gmail.com\"],\"oid\":\"454bd9a9-7a7c-4e7f-9535-213e07408d14\",\"name\":\"hbecker\",\"tfp\":\"B2C_1_SSPR\"}'."}

Я не могу найти никого с этой проблемой в процессе сброса пароля в B2C, поэтому любая помощь приветствуется!

1 Ответ

0 голосов
/ 27 сентября 2018

In Startup.cs (метод ConfigureServices)

services.AddAuthentication(options => { options.DefaultScheme = JwtBearerDefaults.AuthenticationScheme; }) .AddJwtBearer(options => { options.Authority = string.Format("https://login.microsoftonline.com/tfp/{0}/{1}/v2.0/", Portable.Constants.Constants.Tenant, Portable.Constants.Constants.PolicySignUpSignIn); options.Audience = Portable.Constants.Constants.ClientID; options.RequireHttpsMetadata = false; options.Events = new JwtBearerEvents { OnAuthenticationFailed = AuthenticationFailed }; });

Метод In Configure (перед app.UseMvc ();):

app.UseAuthentication();

Убедитесь, что вы также передаете правильные метаданныеконечная точка.

См. этот поток для полного обхода: https://github.com/Azure-Samples/active-directory-b2c-dotnetcore-webapi/issues/9

См. также этот очень подробный поток , обсуждающий, как разработать политику сброса пароля, чтобы избежать этой проблемы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...