AI 에이전트의 경우: 문서 인덱스 https://www.mongodb.com/ko-kr/docs/llms.txt에서 확인할 수 있습니다 — 모든 URL 경로에 .md를 추가하면 모든 페이지의 마크다운 버전을 사용할 수 있습니다.
Make the MongoDB docs better! We value your opinion. Share your feedback for a chance to win $100.
MongoDB Branding Shape
Click here >
Docs Menu

X.509 인증 설정

X.509 클라이언트 인증서는 데이터베이스 사용자에게 프로젝트의 데이터베이스 배포에 대한 액세스를 제공합니다. Atlas Kubernetes Operator를 사용하여 AtlasProject 사용자 지정 리소스AtlasDatabaseUser 사용자 지정 리소스에 대해 X.509 인증을 활성화할 수 있습니다.

X.509 인증 옵션에는 Atlas-managed X.509 인증 및 자체 관리형 X.509 인증 포함됩니다. 자체 관리형 X.509 인증에 대해 자세히 학습하려면 자체 관리형 X.509 인증서 설정을 참조하세요.

X.509 인증을 설정하려면 다음을 수행합니다.

  1. X.509 인증서를 생성합니다.

  2. 인증서를 사용하도록 AtlasProject 사용자 지정 리소스 를 구성합니다.

  3. Atlas managed 또는 자체 managed X.509 인증을 사용하도록 AtlasDatabaseUser 사용자 지정 리소스 를 구성합니다.

참고

자체 관리형 X.509 인증서를 사용하려면 MongoDB Atlas와 통합할 공개 키 인프라가 있어야 합니다.

cert-manager를 사용하여 X.509 인증서를 생성하려면 다음 단계를 수행합니다.

1

cert-manager를 설치하려면 cert-manager 설치 설명서를 참조하세요.

2

cert-manager Issuer를 만들려면 cert-manager 구성 문서를 참조하세요.

자세한 학습 은예시참조하세요.

3

인증서를 만들려면 cert-manager 사용 설명서를 참조하세요.

자세한 학습 은예시참조하세요.

create_X..go를509 사용하여 X.509 인증서를 생성하려면 스크립트 에서 다음 단계를 수행합니다.

1

create_X.509.go 를 실행합니다. 스크립트:

go run scripts/create_x509.go --path={pem-file-path}

예시:

go run scripts/create_x509.go --path=tmp/x509/
2

시크릿에 인증서를 추가하려면 다음 명령을 실행 .

kubectl create secret generic {secret-name} --from-file={pem-file-directory}
kubectl label secret {secret-name} atlas.mongodb.com/type=credentials

예시:

kubectl create secret generic my-x509-cert --from-file=./tmp/x509/cert.pem
kubectl label secret my-x509-cert atlas.mongodb.com/type=credentials
1

사용자 지정 리소스 에 대한 spec.x509CertRef.name 매개변수 AtlasProject 내에 시크릿 을 지정합니다.

예시:

cat <<EOF | kubectl apply -f -
apiVersion: atlas.mongodb.com/v1
kind: AtlasProject
metadata:
name: my-project
spec:
name: Test Project
projectIpAccessList:
- ipAddress: "192.0.2.15"
comment: "IP address for Application Server A"
- cidrBlock: "203.0.113.0/24"
comment: "CIDR block for Application Servers B - D"
x509CertRef:
name: my-x509-cert
EOF
2

AtlasDatabaseUser 사용자 지정 리소스에 대한 x509Type 매개 변수를 지정합니다.

이 매개 변수는 다음을 허용합니다.

none

X.509 인증을 사용하지 않는 사용자입니다.

MANAGED

Atlas managed X.509를 사용하는 사용자입니다.

spec.databaseName 매개 변수에 \$external 를 지정해야 합니다.

CUSTOMER

자체 관리형 X를509 사용하는 사용자. . 이 x509Type 로 생성된 사용자는 username 필드 에 CN(일반 이름)이 필요합니다. 자세한 학습 은 RFC 를 참조하세요.2253

spec.databaseName 매개 변수에 \$external 를 지정해야 합니다.

API 에서 사용할 수 있는 구성 매개변수에 학습 보려면 Atlas 데이터베이스 사용자 API 를 참조하세요.

예시:

cat <<EOF | kubectl apply -f -
apiVersion: atlas.mongodb.com/v1
kind: AtlasDatabaseUser
metadata:
name: my-database-user
spec:
username: CN=my-x509-authenticated-user,OU=organizationalunit,O=organization
databaseName: "\$external"
x509Type: "CUSTOMER"
roles:
- roleName: "readWriteAnyDatabase"
databaseName: "admin"
projectRef:
name: my-project
EOF