IdentityServer 4, ASP.NET Core 3.1 OIDC 알아보기
IdentityServer 개요
IdentityServer는 ASP.NET Core 대한 OIDC(OpenID 커넥트) 및 OAuth 2.0 표준을 구현하는 인증 서버입니다. 웹, 네이티브, 모바일 또는 API 엔드포인트에 관계없이 모든 애플리케이션에 대한 요청을 인증하는 일반적인 방법을 제공하도록 설계되었습니다.
IdentityServer4 신원 서버에서 사용자 인증하고 API 호출하기
https://icodebroker.com/archives/16782
IdentityServer4 액세스 토큰 갱신하기
https://icodebroker.com/archives/16865
호다닥 공부해보는 SSO와 친구들 (SAML, OAuth, OIDC)
https://gruuuuu.github.io/security/ssofriends/
IdentityServer4-어드벤처
Net4Api를 제외한 모든 프로젝트는 .NET 4.5.2를 사용하는 최신 ASP.NET Core 3, Net4Api에 대해 빌드됩니다.
- IdentityServer: IdentityServer4 버전 3.1.0 인스턴스
- 이 저장소에는 문서를 기반으로 하는 IdentityServer4의 샘플 및 프로토타입이 포함되어 있습니다.
- 소스 프로젝트 설명
- Client CredentialsConsoleClient: Grant를 사용하여 access_token을 얻기 위해 IdentityServer를 호출하는 콘솔 앱은 access_token을 사용 하여 Api를 호출합니다.
- MvcClient: MVC 웹 앱은 OpenIdConnect, CodeGrant, 쿠키 인증을 통해 인증하고 access_token을 사용하여 Api를 호출합니다.
- Net4MvcClient: .Net 4.5 MVC 웹 앱은 OpenIdConnect, ImplicitGrant, 쿠키 인증을 통해 인증하고 access_token을 사용하여 Api를 호출합니다.
- JavaScriptClient: SPA 앱은 OpenIdConnect, CodeGrant를 통해 인증하고 access_token을 사용하여 Api를 호출합니다.
- RazorClient: Razor 앱은 OpenIdConnect, ImplicitGrant를 통해 인증합니다.
https://github.com/nahidf/IdentityServer4-adventures
위의 소스를 기반으로 테스트를 하면 작동이 되지 않아, SSL 의 HTTPS 형태로 https://localhost:포트 형태로 만들어서 호출하면 성공적으로 작동됩니다. 위의 원본 소스를 변경해서 별도로 구축 한 내용임.
https://github.com/shimpark/IdentityServer4-adventures
IdentityServer 3 을 기반으로 만든 소스
많은 예제가 존재하며, IdentityServer4 와 약간 다르고, 플로우 흐름은 변경된 사항이 크게 없지만, 코드 부분에 대해 메소드들이 다소 다른 점이 발견되어 참고로 보심 됩니다.
https://github.com/IdentityServer/IdentityServer3.Samples
⬇️⬇️⬇️⬇️⬇️ 현재로썬 아래 코드가 끝판왕이네요. 😊😊😊😊
An ASP.NET Core 6.0 IdentityServer4 Identity Bootstrap 4 template with localization
https://github.com/damienbod/IdentityServer4AspNetCoreIdentityTemplate