Docs Menu
Docs Home
/
MongoDB Cluster-to-Cluster Sync
/

Workload Identity Federation을 사용한 인증

이 페이지의 내용

  • 예시
  • 자세히 알아보기

1.8.1 부터는 mongosyncAtlas Workload Identity Federation 과 함께 사용하여 Microsoft Azure 및 Google Cloud Platform 에서 실행 되는 MongoDB 클러스터에 대한 연결을 인증할 수 있습니다.

이 섹션에서는 Workload Identity Federation을 사용하는 mongosync 예제를 보여줍니다.

연결 문자열 에서 authMechanismMONGODB-OIDC 로 설정하다 하고 필요에 따라 authMechanismProperties 를 설정하다 합니다.

  • Microsoft Azure 의 경우 authMechanismPropertiesENVIRONMENT:azure,TOKEN_RESOURCE:<audience> 로 설정하다 합니다. 참고: Microsoft Azure Kubernetes Service)를 사용하는 경우 TOKEN_RESOURCE 를 생략합니다.

  • Google Cloud Platform 의 경우 authMechanismPropertiesENVIRONMENT:gcp,TOKEN_RESOURCE:<audience> 로 설정하다 합니다.

<audience> 을 액세스 토큰이 의도된 애플리케이션 또는 서비스로 바꿉니다. 자세한 내용은 ID 제공자 필드를 참조하세요.

연결 문자열 옵션에 대한 자세한 내용은 인증 옵션을 참조하세요.

다음 mongosync 예시 는 Microsoft Azure 인스턴스 메타데이터 서비스(IMDS)를 사용하여 MongoDB 클러스터에 연결합니다.

./bin/mongosync \
--logPath /var/log/mongosync \
--cluster0 "mongodb://clusterOne01.fancyCorp.com:20020,clusterOne02.fancyCorp.com:20020,clusterOne03.fancyCorp.com:20020/?authMechanism=MONGODB-OIDC&authMechanismProperties=ENVIRONMENT:azure,TOKEN_RESOURCE:https://www.example.com" \
--cluster1 "mongodb://clusterTwo01.fancyCorp.com:20020,clusterTwo02.fancyCorp.com:20020,clusterTwo03.fancyCorp.com:20020/?authMechanism=MONGODB-OIDC&authMechanismProperties=ENVIRONMENT:azure,TOKEN_RESOURCE:https://www.example.com"

Microsoft Azure Kubernetes Service를 사용하여 MongoDB cluster에 연결하려면 다음 환경 변수를 정의하세요.

환경 변수
설명
AZURE_TENANT_ID
Azure tenant identifier.
AZURE_APP_CLIENT_ID
Azure 애플리케이션 클라이언트 식별자입니다.
AZURE_CLIENT_ID
인증할 managed ID의 Azure 클라이언트 식별자입니다.
AZURE_FEDERATED_TOKEN_FILE
Azure 연합 토큰 파일 경로입니다.

Azure 및 변수에 대한 자세한 내용은 Microsoft Azure 설명서를 참조하세요.

다음 mongosync 예시 에서는 환경 변수를 정의하고 MongoDB 클러스터에 연결합니다.

AZURE_TENANT_ID=08206ab8-16a0-406d-85e4-2f15f5620fac \
AZURE_APP_CLIENT_ID=b6c835da-e536-425b-9405-64bc471e245b \
AZURE_CLIENT_ID=f176d4eb-7dcd-4f66-bccf-aaa316ee61fd \
AZURE_FEDERATED_TOKEN_FILE=/var/run/secrets/azure/tokens/azure-identity-token \
./bin/mongosync \
--logPath /var/log/mongosync \
--cluster0 "mongodb://clusterOne01.fancyCorp.com:20020,clusterOne02.fancyCorp.com:20020,clusterOne03.fancyCorp.com:20020/?authMechanism=MONGODB-OIDC&authMechanismProperties=ENVIRONMENT:azure" \
--cluster1 "mongodb://clusterTwo01.fancyCorp.com:20020,clusterTwo02.fancyCorp.com:20020,clusterTwo03.fancyCorp.com:20020/?authMechanism=MONGODB-OIDC&authMechanismProperties=ENVIRONMENT:azure"

TOKEN_RESOURCE 이 예시 에서는 필요하지 않습니다.

다음 mongosync 예시 는 Google Cloud Platform 에서 MongoDB 클러스터에 연결합니다.

./bin/mongosync \
--logPath /var/log/mongosync \
--cluster0 "mongodb://clusterOne01.fancyCorp.com:20020,clusterOne02.fancyCorp.com:20020,clusterOne03.fancyCorp.com:20020/?authMechanism=MONGODB-OIDC&authMechanismProperties=ENVIRONMENT:gcp,TOKEN_RESOURCE:https://www.example.com" \
--cluster1 "mongodb://clusterTwo01.fancyCorp.com:20020,clusterTwo02.fancyCorp.com:20020,clusterTwo03.fancyCorp.com:20020/?authMechanism=MONGODB-OIDC&authMechanismProperties=ENVIRONMENT:gcp,TOKEN_RESOURCE:https://www.example.com"

Google Cloud Platform 에는 환경 변수가 필요하지 않습니다.

  • mongosync 행동

  • 연결 mongosync

  • mongosync

  • mongosync API 엔드포인트

  • 전환 프로세스 완료

돌아가기

정규 표현식

이 페이지의 내용