티스토리 뷰
Keycloak을 사용하면 세션, 쿠키 및 토큰 시간 제한을 자유롭게 설정할 수 있다. 설정방법에 대해 알아보자.
전역설정 (Realm 단위)
KeyCloak Session, Token에 대한 Timeout 설정은 Realm Settings > Tokens 에서 가능하다. 이곳에 나온 용어가 해석이 어렵다면 아래의 표를 참조하도록 하자. 물론 내가 멋지게 해석할수는 없고 번역기를 돌린것이다.
Configuration | Description |
Revoke Refresh Token | 새로 고침 토큰 흐름을 수행하는 OIDC 클라이언트의 경우이 플래그가 켜져 있으면 해당 새로 고침 토큰을 취소하고 클라이언트가 사용해야하는 요청으로 다른 토큰을 발행합니다. 이것은 기본적으로 새로 고침 토큰이 한 번만 사용된다는 것을 의미합니다. |
SSO Session Idle | 또한 OIDC 클라이언트와 관련이 있습니다. 사용자가이 시간 제한보다 오랫동안 활동하지 않으면 사용자 세션이 무효화됩니다. 유휴 시간은 어떻게 확인합니까? 인증을 요청하는 클라이언트는 유휴 제한 시간을 초과합니다. 토큰 새로 고침 요청도 유휴 시간 제한을 증가시킵니다. |
SSO Session Max | 사용자 세션이 만료되고 무효화되기 전까지의 최대 시간입니다. 이것은 어려운 숫자와 시간입니다. 활동에 관계없이 사용자 세션이 활성 상태를 유지할 수있는 최대 시간을 제어합니다. |
Offline Session Idle | 대한 오프라인 액세스 ,이 세션이 오프라인 토큰이 취소되기 전에 유휴 상태로 유지 될 수있는 시간입니다. |
Access Token Lifespan | OIDC 액세스 토큰이 생성되면이 값이 만료에 영향을줍니다. |
Access Token Lifespan For Implicit Flow | 암시 적 흐름에서는 새로 고침 토큰이 제공되지 않습니다. 이러한 이유로 암시 적 흐름을 사용하여 생성 된 액세스 토큰에 대한 별도의 시간 제한이 있습니다. |
Client login timeout | 클라이언트가 OIDC에서 인증 코드 흐름을 완료해야하는 최대 시간입니다. |
Login timeout | 로그인에 소요되는 총 시간입니다. 인증이이 시간보다 오래 걸리면 사용자는 인증 프로세스를 다시 시작해야합니다. |
Login action timeout | 사용자가 인증 프로세스에서 한 페이지에 소비 할 수있는 최대 시간입니다. |
User-Initiated Action Lifespan | 사용자가 보낸 작업 허가 (예 : 비밀번호 분실 이메일)가 만료되기 전까지의 최대 시간입니다. 이 값은 사용자가 직접 만든 작업에 빠르게 반응 할 것으로 예상되므로 짧게하는 것이 좋습니다. |
Default Admin-Initiated Action Lifespan | 관리자가 사용자에게 보낸 작업 허가가 만료되기 전까지의 최대 시간입니다. 관리자가 현재 오프라인 상태 인 사용자에게 전자 메일을 보낼 수 있도록이 값을 길게 설정하는 것이 좋습니다. 기본 시간 제한은 토큰을 발행하기 직전에 재정의 할 수 있습니다. |
지역설정 (Client 단위)
Timeout을 물론 Client 단위로 설정할 수도 있다.
Clients > Settings > Advanced Settings 에서 Client별 Timeout을 설정할 수 있다.
우선순위는 지역설정 (Client) 이 우선이다.
각 항목은 위의 표를 참조하도록 하자.
끝!
참고 : wjw465150.gitbooks.io/keycloak-documentation/content/server_admin/topics/sessions/timeouts.html
'Framework > Security' 카테고리의 다른 글
OWASP Top 10 2021 한글 version (0) | 2021.09.08 |
---|---|
Spring Security remember-me 사용하여 로그인 유지하기 예제 (0) | 2021.07.22 |
JasperException : security/tags cannot be resolved in either web.xml or the jar files deployed with this application 오류 (0) | 2021.01.13 |
KeyCloak OAuth2를 활용해서 SSO 로그인 하기 (google) (5) | 2021.01.12 |
Spring Security CORS 설정하기 (0) | 2021.01.07 |