반응형
(1) IdentityServer가 추가되어있는 솔루션에 새로운 API 프로젝트를 추가해 줍니다.
dotent new webapi -n {프로젝트명} --no-openapi
(2) 해당 프로젝트를 솔루션에 추가해 줍니다.
dotnet sln add ./src/{프로젝트폴더}
(3) Microsoft.AspNetCore.Authentication.JwtBearer 라이브러리를 Nuget에서 설치해 줍니다.
dotnet add ./{프로젝트폴더} package Microsoft.AspNetCore.Authentication.JwtBearer
(4) 추가한 프로젝트의 Program.cs 를 다음과 같이 수정합니다.
using System.Security.Claims;
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddAuthentication()
.AddJwtBearer(options =>
{
options.Authority = "https://localhost:5001";
options.TokenValidationParameters.ValidateAudience = false;
});
builder.Services.AddAuthorization();
var app = builder.Build();
app.UseHttpsRedirection();
app.MapGet("identity", (ClaimsPrincipal user) => user.Claims.Select(c => new { c.Type, c.Value }))
.RequireAuthorization();
app.Run();
(5) 이제 웹브라우저로 실행해서 https://localhost:6001/identity 로 접속하면 401 권한 없음 오류가 뜨는 것을 확인할 수 있습니다.
반응형
'개발이야기 > AspNet&C#' 카테고리의 다른 글
IdentityServer 학습 #4 - Scope (0) | 2024.03.07 |
---|---|
IdentityServer 학습 #3 (0) | 2024.03.07 |
IdentityServer 학습 #1 - 기본셋팅 (0) | 2024.03.07 |
Blazor + Efcore로 웹사이트 만들기 (2) (0) | 2024.02.06 |
Blazor + Efcore로 웹사이트 만들기 (1) (0) | 2024.02.05 |