Реализация ASP.NET Core OAuth2 с использованием учетной записи компанииC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Реализация ASP.NET Core OAuth2 с использованием учетной записи компании

Сообщение Anonymous »

Я работаю над реализацией OAuth в приложении ASP.NET Core (.NET 8, шаблон Core Empty) и пытаюсь получить токен, войдя в корпоративную учетную запись. В файле launchSettings.json я установил «applicationUrl»: «http://localhost:9001». Если я запускаю следующий код в Program.cs при вызове http://localhost :9001/логин:

Код: Выделить всё

var builder = WebApplication.CreateBuilder(args);

builder.Services.AddAuthentication("cookie")
.AddCookie("cookie")
.AddOAuth("a", static opt =>
{
opt.UsePkce = true;
opt.SignInScheme = "cookie";
opt.ClientId = "12345";
opt.AuthorizationEndpoint = "https:///oauth2/v2.0/authorize";
opt.TokenEndpoint = "https:///oauth2/v2.0/token";
opt.ClientSecret = "secret";
opt.CallbackPath = "/";
// fill the Scope
opt.Scope.Clear();
opt.Scope.Add("openid");
opt.Scope.Add("offline_access");
opt.Scope.Add("https:///File.Read");
opt.Scope.Add("https:///File.Write");
opt.SaveTokens = true;
});

var app = builder.Build();

app.UseAuthentication();

app.MapGet("/", (
HttpContext ctx) => {
ctx.GetTokenAsync("access_token");
return ctx.User.Claims.Select(x => new{x.Type, x.Value}).ToList();
});

app.MapGet("/login", () => {return Results.Challenge(
new AuthenticationProperties(){ RedirectUri = "http://localhost:9001/" },
authenticationSchemes: new List() {"a"}); });

app.Run();
Открывается страница для входа, и я могу ввести свои учетные данные. После этого я получаю следующее сообщение об ошибке:

Ошибка конечной точки токена OAuth: valid_request;Description=AADB2C90084:
Публичные клиенты не должны отправлять client_secret, когда погашение
государственного гранта.

Мои вопросы:
Что может быть причиной этой ошибки и как это может быть улучшено?
Есть ли другой способ выполнить это требование?

Подробнее здесь: https://stackoverflow.com/questions/787 ... ny-account
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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