OAuth2 с аутентификацией Google на Swagger C#C#

Место общения программистов C#
Ответить
Anonymous
 OAuth2 с аутентификацией Google на Swagger C#

Сообщение Anonymous »


Я использую Swagger для аутентификации пользователя через аутентификацию Google. Моя цель состоит в том, чтобы когда я нажимаю кнопку авторизации и ввожу ClientID . Он перенаправил меня на страницу входа в Google, и после успешного входа я вернулся в Swagger. однако в моем случае, когда я ввожу ClientID, он перенаправляет меня на страницу входа в Google, но у меня не получается вернуться в чванство и не показывает мне кнопку выхода из системы в этом чванстве. (Я не использую сервер идентификации или, может быть, мне следует?)

Программа
builder.Services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme).AddJwtBearer(options => { options.TokenValidationParameters = новые параметры TokenValidationParameters { ValidateIssuer = правда, Валидатаудиенс = правда, ValidateLifetime = правда, ValidateIssuerSigningKey = true, ValidIssuer = builder.Configuration["Jwt:Issuer"], ValidAudience = builder.Configuration["Jwt:Audience"], IssuerSigningKey = новый SymmetricSecurityKey(Encoding.UTF8.GetBytes(builder.Configuration["Jwt:Key"])) }; }) .AddGoogle(googleOptions => { googleOptions.ClientId = builder.Configuration["Google:ClientId"]; googleOptions.ClientSecret = builder.Configuration["Google:ClientSecret"]; }); builder.Services.AddSwaggerGen(c => { c.SwaggerDoc("v1", новый Microsoft.OpenApi.Models.OpenApiInfo { Заголовок = "Google Аутентификация", Версия = "v1" }); c.AddSecurityDefinition("oauth2", новая OpenApiSecurityScheme { Описание = "Уат", Имя = "oauth2.0", Тип = SecuritySchemeType.OAuth2, Потоки = новые OpenApiOAuthFlows { Неявный = новый OpenApiOAuthFlow { AuthorizationUrl = новый Uri($"https://accounts.google.com/o/oauth2/v2/auth"), TokenUrl = новый Uri($"https://oauth2.googleapis.com/token"), Области = новый словарь { { $"https://www.googleapis.com/auth/cloud-p ... .read-only", "Пользователь" } } } } }); c.AddSecurityRequirement(новый OpenApiSecurityRequirement{ { новый OpenApiSecurityScheme{ Ссылка = новый OpenApiReference {Id = "oauth2", Тип = ТипСсылки.Схема Безопасности}, Схема="oauth2", Имя = "авторизация", },новый список() } }); }); builder.Services.AddAuthorization(); приложение.UseAuthentication(); приложение.UseAuthorization(); app.UseSwaggerUI(опции => { options.SwaggerEndpoint("/swagger/v1/swagger.json", "v1"); options.RoutePrefix = string.Empty; options.OAuth2RedirectUrl("https://localhost:7189/Auth/LoginSuccess"); // я должен использовать это, // потому что я получил redirect_error, но я не хочу перенаправлять меня на страницу options.OAuthUsePkce(); options.OAuthUseBasicAuthenticationWithAccessCodeGrant(); });
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»