Код: Выделить всё
public static void AddAuthorizationWithIdentity(this WebApplicationBuilder builder)
{
builder.Services.AddIdentity()
.AddEntityFrameworkStores()
.AddDefaultTokenProviders()
.AddApiEndpoints();
builder.Services.AddAuthentication(options =>
{
options.DefaultScheme = IdentityConstants.BearerScheme; // Use Bearer by default
options.DefaultAuthenticateScheme = IdentityConstants.BearerScheme;
options.DefaultChallengeScheme = IdentityConstants.BearerScheme;
}).AddBearerToken(IdentityConstants.BearerScheme);
builder.Services.AddAuthorization();
}
< /code>
и я добавил эту строку для отображения конечных точек для входа, регистрации, восстановления, подтверждения электронной почты ...: < /p>
app.MapIdentityApi();
< /code>
Все выглядит нормально. Логин и основанные на ролевых разрешениях выглядят нормально. Тем не менее, я не понимал, какой секретный ключ он использует для создания токена доступа в конечной точке входа. В jwt.io Этот инструмент поддерживает только JWT, который использует JWS Compact Serialization, который должен иметь три базовых 64-оборотных сегмента, разделенных на два периода ('.'. '.'. '.'. '.'. '.'. '.'. '.'. ’. '.'. DELINGER-CELSE-ENCODED SEGRESS, разделенный двумя периодами ('.'. '.'. '.'. '.'. '.'. '.'. '.'. '. /> < /blockquote>
Вопросы: < /p>
Где секретный ключ? < /li>
Какой алгоритм он используется для создания токена?>
Подробнее здесь: https://stackoverflow.com/questions/796 ... n-identity
Мобильная версия