NET Core JWT - Как обработать проверку подлинности в Micro Service - PullRequest
0 голосов
/ 25 марта 2019

В Startup.cs (NET CORE) я использую JWT для создания и проверки токена. Теперь мне нужно обновить токен и обработать его с помощью черного списка токенов. При входе в систему я создал AccessToken & Refresh Token.

Я нашел здесь другие решения безопасности. https://scotch.io/@sagarsubedi/3-level-jwt-secret-is-this-a-good-idea

Запрос базы данных для пользователя
Проверить подпись получить app_secret получить user_secret от пользователя используя утверждение token_id, получите token_secret из token_info пользователя. также подтвердите требование exp для токена с сохраненным используйте заголовок, полезную нагрузку и секреты для пересчета подписи. убедитесь, что подпись, поставляемая с токеном и пересчитанной подписью, совпадает.

Я бы показал свой текущий код в токене авторизации.

services.AddAuthentication (options =>

        {
            options.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme;
            options.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme;

        })

.AddJwtBearer (configureOptions =>

{ configureOptions.ClaimsIssuer = jwtAppSettingOptions [nameof (JwtIssuerOptions.Issuer)];

            configureOptions.TokenValidationParameters = tokenValidationParameters;
            configureOptions.SaveToken = true;

            configureOptions.Events = new JwtBearerEvents
            {
                OnAuthenticationFailed = context =>
                {
                    if (context.Exception.GetType() == typeof(SecurityTokenExpiredException))
                    {
                        context.Response.Headers.Add("Token-Expired", "true");
                    }
                    return Task.CompletedTask;
                } 

            };
        });

Я не знаю, как обрабатывать правильное следующее решение в Пуск> ConfigureServices. Я думаю, что мне нужно обработать токен Validate
потому что я должен проверить черный список в БД перед действительным токеном. (Или пример как другое решение)

В настоящее время это только действительный токен, но он не может проверить черный список в БД. Или сделай что-нибудь.

Пожалуйста, помогите мне.

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