인증 개요

이 페이지에서는 Azure용 GKE가 Google Cloud에 대한 인증 및 클러스터에 대한 사용자 인증을 처리하는 방법을 설명합니다.

Azure용 GKE가 Azure에 연결하는 방법

GKE Multi-cloud API는 AzureClient 객체를 사용하여 Azure에 인증을 수행합니다. 클라이언트를 만들 때 Google은 X.509 키 쌍을 생성합니다. 공개 키를 Azure Active Directory(Azure AD)에 업로드합니다.

자세한 내용은 AzureClient 만들기를 참조하세요.

인증

GKE Multi-Cloud API 인증

GKE Multi-Cloud API를 사용하여 클러스터 및 노드 풀을 생성, 업데이트, 삭제합니다. 다른 Google Cloud API와 같이 REST, Google Cloud CLI, Google Cloud 콘솔에 이 API를 사용할 수 있습니다.

자세한 내용은 Google Cloud 인증 개요GKE Multi-Cloud API 참고 문서를 참조하세요.

Kubernetes API 인증

kubectl 명령줄 도구를 사용하여 워크로드 배포 및 부하 분산기 구성과 같은 클러스터 작업을 수행할 수 있습니다. kubectl 도구는 클러스터의 제어 영역에서 Kubernetes API에 연결합니다. 이 API를 호출하려면 승인된 사용자 인증 정보로 인증을 수행해야 합니다.

사용자 인증 정보를 가져오려면 다음 방법 중 하나를 사용하면 됩니다.

  • Google ID: 사용자가 자신의 Google Cloud ID를 사용하여 로그인할 수 있습니다. 사용자가 이미 Google ID를 사용하여 Google Cloud에 액세스할 수 있으면 이 옵션을 사용합니다.

  • GKE Identity Service: 사용자가 OpenID Connect(OIDC)를 사용하여 로그인할 수 있습니다.

GKE Identity Service를 사용하면 Okta, Active Directory Federation Services(ADFS), OIDC 호환 ID 공급업체와 같은 ID 공급업체를 사용할 수 있습니다.

승인

Azure용 GKE에는 GKE Multi-Cloud API 및 역할 기반 액세스 제어(RBAC) 등 두 가지 액세스 제어 방법이 있습니다. 이 섹션에서는 이러한 두 방법 간의 차이점을 설명합니다.

클러스터와 워크로드를 보호하려면 계층화된 접근 방식을 취하는 것이 가장 좋습니다. 사용자와 워크로드에 제공하는 액세스 수준에 최소 권한의 원칙을 적용할 수 있습니다. 적절한 수준의 유연성과 보안을 위해 절충해야 할 수도 있습니다.

GKE Multi-Cloud API 액세스 제어

GKE Multi-Cloud API를 사용하면 클러스터 관리자가 클러스터 및 노드 풀을 만들고, 업데이트, 삭제할 수 있습니다. Identity and Access Management(IAM)로 API에 대해 권한을 관리합니다. API를 사용하려면 사용자에게 적절한 권한이 있어야 합니다. 각 작업에 필요한 권한은 API 역할 및 권한을 참조하세요. IAM을 사용하면 역할을 정의하고 이를 주 구성원에게 할당할 수 있습니다. 역할은 권한 모음이며, 주 구성원에게 할당되는 경우 하나 이상의 Google Cloud 리소스에 대한 액세스를 제어합니다.

조직, 폴더, 프로젝트에 클러스터 또는 노드 풀을 만들면 해당 조직, 폴더, 프로젝트에 적절한 권한이 있는 사용자가 리소스를 수정할 수 있습니다. 예를 들어 Google Cloud 프로젝트 수준에서 클러스터 삭제 권한을 사용자에게 부여하면, 이 사용자가 해당 프로젝트에서 모든 클러스터를 삭제할 수 있습니다. 자세한 내용은 Google Cloud 리소스 계층IAM 정책 만들기를 참조하세요.

Kubernetes API 액세스 제어

Kubernetes API를 사용하면 Kubernetes 객체를 관리할 수 있습니다. Kubernetes API에서 액세스 제어를 관리하려면 역할 기반 액세스 제어(RBAC)를 사용합니다. 자세한 내용은 GKE 문서에서 역할 기반 액세스 제어 구성을 참조하세요.

관리자 액세스

gcloud CLI를 사용하여 클러스터를 만들면 기본적으로 GKE Multi-Cloud API는 사용자 계정을 관리자로 추가하고 클러스터에 대한 전체 관리 액세스 권한을 부여하는 적절한 RBAC 정책을 만듭니다. 다른 사용자를 구성하려면 클러스터를 만들거나 업데이트할 때 --admin-users 플래그를 전달하세요. --admin-users 플래그를 사용할 때는 클러스터를 관리할 수 있는 모든 사용자를 포함해야 합니다. gcloud CLI에는 클러스터를 만드는 사용자가 포함되지 않습니다.

Google Cloud 콘솔을 사용하여 관리자를 추가할 수도 있습니다. 자세한 내용은 클러스터 업데이트를 참조하세요.

클러스터 액세스 구성을 참조하려면 다음 명령어를 실행합니다.

kubectl describe clusterrolebinding gke-multicloud-cluster-admin

Kubernetes API 서버에 액세스하기 위한 RBAC 정책 외에도 관리자가 프로젝트 소유자가 아닌 경우 Google ID를 사용하여 인증할 수 있도록 관리자에게 특정 IAM 역할을 부여해야 합니다. 클러스터에 연결하는 방법에 대한 자세한 내용은 클러스터에 연결 및 인증을 참조하세요.

다음 단계