16.16. 인증 제한 세션


웹 브라우저에서 로그인 페이지가 처음 열리면 Red Hat Single Sign-On은 요청에 대한 유용한 정보를 저장하는 인증 세션이라는 오브젝트를 생성합니다. 동일한 브라우저의 다른 탭에서 새 로그인 페이지가 열 때마다 Red Hat Single Sign-On은 인증 세션에 저장된 인증 하위 세션이라는 새 레코드를 생성합니다. 인증 요청은 Admin CLI와 같은 모든 유형의 클라이언트에서 가져올 수 있습니다. 이 경우 하나의 인증 하위 세션을 사용하여 새 인증 세션도 생성됩니다. 인증 세션은 브라우저 흐름을 사용하는 것 이외의 다른 방법으로 생성할 수 있습니다. 아래 텍스트는 소스 흐름에 관계없이 적용됩니다.

참고

이 섹션에서는 인증 세션에 RHDG 공급자를 사용하는 배포에 대해 설명합니다.

인증 세션은 내부적으로 RootAuthenticationSessionEntity 로 저장됩니다. 각 Root AuthenticationSessionEntity 는 AuthenticationSessionEntity 개체의 컬렉션으로 RootAuthenticationSessionEntity 에 저장된 여러 인증 하위 세션을 포함할 수 있습니다. Red Hat Single Sign-On은 인증 세션을 전용 RHDG 캐시에 저장합니다. Root AuthenticationSessionEntity 당 AuthenticationSessionEntity의 수는 각 캐시 항목의 크기에 기여합니다. 인증 세션 캐시의 총 메모리 풋프린트는 저장된 RootAuthenticationSessionEntity 수와 각 Root AuthenticationSessionEntity 내의 AuthenticationSessionEntity 수에 따라 결정됩니다.

유지 관리되는 RootAuthenticationSessionEntity 개체 수는 브라우저에서 완료되지 않은 로그인 흐름 수에 해당합니다. RootAuthenticationSessionEntity 의 수를 제어 상태로 유지하려면 고급 방화벽 제어를 사용하여 수신 네트워크 트래픽을 제한하는 것이 좋습니다.

AuthenticationSessionEntity 가 많은 활성 RootAuthenticationSessionEntity 가 많은 배포에서 메모리 사용량이 증가할 수 있습니다. 로드 밸런서가 지원되지 않거나 세션 고정 용으로 구성되지 않은 경우 클러스터의 네트워크를 통한 로드가 크게 증가할 수 있습니다. 이러한 로드의 이유는 적절한 인증 세션을 소유하지 않는 노드에 배치하는 각 요청은 검색 및 스토리지 모두에 별도의 네트워크 전송이 필요한 소유자 노드의 인증 세션 레코드를 검색하고 업데이트해야하기 때문입니다.

Root AuthenticationSessionEntity 당 AuthenticationSessionEntity의 최대 수는 authSessionsLimit 속성을 설정하여 authenticationSessions SPI에서 구성할 수 있습니다. 기본값은 Root AuthenticationSessionEntity 당 300 AuthenticationSessionEntity로 설정됩니다. 이 제한에 도달하면 새 인증 세션 요청 후 가장 오래된 인증 하위 세션이 제거됩니다.

다음 예에서는 Root AuthenticationSessionEntity 당 활성 AuthenticationSessionEntity 수를 100으로 제한하는 방법을 보여줍니다.

<subsystem xmlns="urn:jboss:domain:keycloak-server:1.2">
    ...
    <spi name="authenticationSessions">
        <default-provider>infinispan</default-provider>
        <provider name="infinispan" enabled="true">
            <properties>
                <property name="authSessionsLimit" value="100"/>
            </properties>
        </provider>
    </spi>
    ...
</subsystem>

CLI 명령을 사용하는 동등한 구성:

/subsystem=keycloak-server/spi=authenticationSessions:add(default-provider=infinispan)
/subsystem=keycloak-server/spi=authenticationSessions/provider=infinispan:add(properties={authSessionsLimit => "100"},enabled=true)
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.