GKE ID 서비스는 기존 ID 공급업체를 통합하여 Google Distributed Cloud 클러스터에 사용자를 인증할 수 있도록 합니다. 사용자는 OpenID Connect (OIDC) 또는 경량 디렉터리 액세스 프로토콜 (LDAP)을 사용하여 명령줄에서 Kubernetes API 서버에 연결하거나 OIDC를 사용하여 Google Cloud 콘솔을 통해 연결할 수 있습니다.
이 서비스는 관리자, 사용자, 하이브리드, 독립형 클러스터를 지원하며 Active Directory Federation Services (ADFS)와 같은 온프레미스 시스템과 Okta와 같은 공개 제공업체에 연결합니다. 조직에서 Google 계정을 사용하는 경우 Connect 게이트웨이를 사용하여 클러스터 액세스를 관리합니다.
아키텍처 개요
GKE ID 서비스는 클러스터 컨트롤 플레인 내에서 포드로 실행됩니다. 클러스터 수명 주기 단계에서 API 서버는 클러스터 내 GKE ID 서비스를 모든 수신 요청의 인증 웹훅으로 사용하도록 동적으로 구성됩니다. API 서버가 클러스터 내 DNS를 사용할 수 없습니다. 따라서 API 서버는 REST 리소스 액세스로 GKE ID 서비스에 액세스하도록 구성됩니다. 감사 로그에서 이 호출은 system:anonymous 사용자가 서비스 또는 프록시 리소스에 대한 CREATE 요청으로 기록됩니다.
시작하기 전에
사용자 동의를 구하고 사용자 계정을 승인하기 위해 브라우저 기반 인증 흐름이 사용됩니다. 헤드리스 시스템은 지원되지 않습니다.
Google Cloud 콘솔을 통해 인증하려면 구성하려는 각 클러스터가 프로젝트 Fleet에 등록되어 있어야 합니다.
설정 프로세스 및 옵션
GKE Identity Service는 다음 프로토콜을 사용하여 ID 공급업체를 지원합니다.
OpenID Connect(OIDC). Google에서는 Microsoft를 비롯한 일부 인기 있는 OpenID 제공업체의 설정을 위한 구체적인 안내를 제공하지만 개발자는 OIDC를 구현하는 모든 제공업체를 사용할 수 있습니다.
경량 디렉터리 액세스 프로토콜(LDAP). GKE ID 서비스를 사용하면 Active Directory의 LDAP 또는 LDAP 서버를 사용하여 인증할 수 있습니다.
OIDC
GKE ID 서비스 제공업체 구성의 안내에 따라 GKE ID 서비스를 클라이언트로 OIDC 제공업체에 등록합니다.
다음 클러스터 구성 옵션 중에서 선택합니다.
(권장) Fleet 수준 GKE Identity Service를 위한 클러스터 구성의 안내에 따라 Fleet 수준에서 클러스터를 구성합니다. 이 옵션을 사용하면 인증 구성이 Google Cloud에서 중앙으로 관리됩니다.
OIDC로 GKE Identity Service를 위한 클러스터 구성의 안내에 따라 클러스터를 개별적으로 구성합니다.
GKE Identity Service를 위한 사용자 액세스 설정의 안내에 따라 역할 기반 액세스 제어(RBAC)를 포함하여 클러스터에 대한 사용자 액세스 권한을 설정합니다.
LDAP
LDAP를 시작하려면 LDAP로 GKE ID 서비스 설정의 안내를 따르세요.
클러스터 액세스
GKE ID 서비스가 설정된 후 사용자는 명령줄 또는 Google Cloud 콘솔을 사용하여 구성된 클러스터에 로그인할 수 있습니다.
(권장) GKE ID 서비스를 사용하여 클러스터에 액세스에서 OIDC 또는 LDAP ID로 등록된 클러스터에 로그인하는 방법을 알아봅니다.
Google Cloud 콘솔에서 클러스터에 로그인하는 방법은 Google Cloud 콘솔에서 클러스터 작업(OIDC만 해당)을 참고하세요.
로그인 흐름 문제 해결
정규화된 도메인 이름(FQDN)으로 GKE Identity Service 서버에서 직접 인증하는 로그인 흐름을 해결하려면 GKE Identity Service 진단 유틸리티를 사용하면 됩니다. 진단 유틸리티는 OIDC 제공업체의 로그인 흐름을 시뮬레이션하여 구성 문제를 빠르게 식별합니다. 이 도구를 사용하려면 버전 1.32 이상 클러스터가 필요하며 OIDC만 지원됩니다. 자세한 내용은 GKE Identity Service 진단 유틸리티를 참조하세요.