sitelink1  
sitelink2  
sitelink3  
sitelink4  
extra_vars5  
extra_vars6  

Realm은 인증, 인가의 범위라고 보면 된다.

  - 사용자들의 자격증명, 역할, 그룹 등을 관리하는 객체이다

  - Keycloak의 사용자는 하나의 Realm에만 속할 수 있다

  - Realm은 서로 독립적이다

예를 들자면 A Portal에서 우리가 카페에서 로그인을 해도 메일도 같은 realm 안에 있기 때문에 별도의 로그인 없이 SSO를 통해 이용을 할 수 있는것이다.

이처럼 같은 realm안에서 한번 로그인을 하면 그 realm안에 등록된 client를 모두 이용을 할 수 있게 된다. (Single Sign On)

keycloak 공식사이트에서는 다음과 같은 내용도 있다. (Kubernetes-Keycloak)

A realm in Keycloak is the equivalent of a tenant. It allows creating isolated groups of applications and users.

By default there is a single realm in Keycloak called master.

This is dedicated to manage Keycloak and should not be used for your own applications.

>>>

Keycloak의 Realm은 Tenant와 동일합니다. 이를 통해 격리된 응용 프로그램 및 사용자 그룹을 만들 수 있습니다.

기본적으로 Keycloak에는 master 라는 단일 Realm이 있습니다.

이는 Keycloak 관리 전용이므로 자체 애플리케이션에 사용해서는 안됩니다.

 

 

OAuth 2.0 Client Types

  • RFC 6749 (https://datatracker.ietf.org/doc/html/rfc6749#section-2.1)
  • 인증 서버에 클라이언트를 등록할 때 클라이언트 자격 증명인 client id 와 client secret 을 받는다.
  • client secret 은 비공개이고 그대로 유지되어야 하는 반면 client id 는 공개이다.
  • 이 자격 증명은 인증 서버에 대한 client id 를 증명한다.
  • Confidential Clients 는 client secret 의 기밀성을 유지할 수 있는 클라이언트를 의미한다.
  • Confidential Clients 는 client secret 이 cgi 언어로만 처리되어 client 프로그램에는 노출되지 않는 형태이다.
  • Public Clients 는 client secret 의 기밀성을 유지할 수 없으므로 이러한 클라이언트에서는 secret 을 사용하지 않는다.
  • 참고 구성도 -> OAuth 2.0 Client Types 자료 화면 (인증 프로세스)

 

Capability config / Client authentication

This defines the type of the OIDC client. (OpenID Connect client)

When it's ON, the OIDC type is set to confidential access type. 

When it's OFF, it is set to public access type

>>>

이 옵션은 OIDC client 의 유형을 정의한다.

ON으로 설정하면 client가 confidential access type 으로 동작한다.

OFF로 설정하면 client가 public access type 으로 동작한다.

confidential 과 public 의 차이점은 클라이언트 자격 증명 데이터(아이디/비밀번호)를 안전하게 저장, 관리 할 수 있는 어플리케이션이냐의 여부에 있다.

confidential application의 대표적인 예는 회원관리 기능을 가진 웹어플리케이션 서버가 있고 해당 프로그램에서는 사용자 개인정보를 안전하게 관리 할 수 있는 보안성을 유지 할 수 있다.

반면에 public application의 대표적인 예는 웹브라우저의 javascript 등이 있는데 이러한 언어들에서는 매우 민감한 사용자 개인정보를 그대로 노출하여 제어하기 때문에 사용자의 기밀 정보를 보호 할 수 없다.

그래서 이러한 어플리케이션의 기밀성의 차이로 인해 사용자 인증 유형을 분리하는 것이다.

 

 

Capability config / Authorization

Enable/Disable fine-grained authorization support for a client

>>>

클라이언트에 대한 세분화된 인증 지원 활성화/비활성화

 

 

Authentication flow / Standard flow

This enables standard OpenID Connect redirect based authentication with authorization code. 

In terms of OpenID Connect or OAuth2 specifications, this enables support of 'Authorization Code Flow' for this client.

>>>

authorization code를 사용한 표준 OpenID Connect 리디렉션 기반 인증이 가능해진다. 

OpenID Connect 또는 OAuth2 사양 측면에서 이를 통해 이 클라이언트에 대한 '인증 코드 흐름'을 지원할 수 있다.

 

 

Authentication flow / Direct access grants

This enables support for Direct Access Grants, which means that client has access to username/password of user and exchange it directly with Keycloak server for access token. 

In terms of OAuth2 specification, this enables support of 'Resource Owner Password Credentials Grant' for this client.

>>>

클라이언트가 사용자 이름/비밀번호에 액세스 할 수 있고, 이를 액세스 토큰으로 Keycloak 서버에서 직접 교환한다.

OAuth2 specification 측면에서 이는 클라이언트에 대한 '리소스 소유자 비밀번호 자격 증명 부여' 지원 기능을 활성화 하는 것이다.

 

 

Authentication flow / Implicit flow

This enables support for OpenID Connect redirect based authentication without authorization code. 

In terms of OpenID Connect or OAuth2 specifications, this enables support of 'Implicit Flow' for this client.

>>>

authorization code 없이 OpenID Connect 리디렉션 기반 인증을 지원할 수 있다.

OpenID Connect 또는 OAuth2 사양 측면에서 이를 통해 이 클라이언트에 대한 '암시적 흐름' 지원이 가능해진다.

 

 

Authentication flow / Service accounts roles

Allows you to authenticate this client to Keycloak and retrieve access token dedicated to this client. 

In terms of OAuth2 specification, this enables support of 'Client Credentials Grant' for this client.

>>>

클라이언트를 Keycloak에 인증하고 클라이언트 전용 액세스 토큰을 검색 할 수 있다.

OAuth2 사양 측면에서 이는 클라이언트에 대한 '클라이언트 자격 증명 부여'(Client Credentials Grant) 지원을 활성화한다.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

번호 제목 sitelink1 글쓴이 날짜 조회 수
공지 [계속 추가중] SBOM 용어 정의   황제낙엽 2025.04.10 52
» [계속 추가중] Keycloak 용어 및 설정 옵션 정의   황제낙엽 2024.02.02 631
45 무료 SSL/TLS 인증서 Let's Encrypt(Linux+Apache) secret https://letsencrypt.org/docs/rate-limits/  황제낙엽 2020.04.05 17
44 SNI 기반 HTTPS 사이트 차단 file https://blog.naver.com/aepkoreanet/221465526990  황제낙엽 2020.03.04 170
43 사설인증서 공인인증서 구분 방법 file   황제낙엽 2019.07.16 186
42 Convert Certificate Format SSL 인증서 변환 가이드 https://www.securesign.kr/guides/SSL-Cer...ert-Format  황제낙엽 2019.03.29 199
41 *.key와 *.crt를 PKCS#12(*.pfx, *.p12)로 형식으로 변환하기 https://www.eznbiz.co.kr/help/qna/content/3  황제낙엽 2019.03.29 213
40 HOWTO: DER vs. CRT vs. CER vs. PEM Certificates and How To Convert Them http://info.ssl.com/article.aspx?id=12149  황제낙엽 2019.03.29 869
39 How to convert a certificate file from .crt to .cer? file https://www.sonicwall.com/support/knowle...597576961/  황제낙엽 2019.03.29 661
38 국내(KOREA) IP 사용 대역 file http://www.domain.kr  황제낙엽 2019.02.21 360
37 서버 보안 관리를 위한 백업과 점검 절차   황제낙엽 2017.05.30 201
36 정보 보안 개론 : 네이버 지식백과 http://terms.naver.com/list.nhn?cid=5843...ryId=58437  황제낙엽 2017.05.19 191
35 개발용 tomcat 운용시 tomcat-users.xml 의 관리 주의   황제낙엽 2017.04.07 391
34 윈도우 원격데스크톱(RDP) 접근 이력 조회 file http://skylit.tistory.com/196  황제낙엽 2017.04.06 243
33 SSL, TLS, OpenSSL 관련 http://kin.naver.com/qna/detail.nhn?d1id...K9fw%3D%3D  황제낙엽 2015.12.31 217
32 운영 모드 ( Mode of Operation )   황제낙엽 2013.03.07 347
31 암호화 알고리즘 스크랩   황제낙엽 2012.08.28 3076
30 미연방 표준 암호 알고리즘 http://rustican.com/board/zboard.php?id=paper&no=140  황제낙엽 2010.05.21 285
29 blowfish java source file http://www.angelfire.com/moon/dmp/  황제낙엽 2010.05.16 507
28 파일 해쉬 알고리즘 CRC   황제낙엽 2009.12.01 409
27 해쉬 알고리즘의 종류   황제낙엽 2009.12.01 406
26 Ajax 보안 관련 문서 (Attacking AJAX Web Applications) file   황제낙엽 2009.02.12 176