데이터 보안 유지
개요
MongoDB 는 애플리케이션 을 인증하는 데 사용할 수 있는 여러 메커니즘을 지원합니다. 이 페이지에는 이러한 각 메커니즘을 보여주는 코드 예제가 포함되어 있습니다.
팁
이 페이지에 표시된 메커니즘에 학습 보려면 각 섹션에 제공된 링크를 참조하세요.
이 페이지의 인증 예시 를 사용하려면 코드 예시 를 샘플 애플리케이션 또는 자체 애플리케이션 에 복사합니다. 코드 예제의 모든 자리 표시자(예: <hostname>
)를 MongoDB deployment 관련 값으로 바꿔야 합니다.
샘플 애플리케이션
다음 샘플 애플리케이션을 사용하여 이 페이지의 코드 예제를 테스트할 수 있습니다. 샘플 애플리케이션을 사용하려면 다음 단계를 수행하세요.
C 운전자 설치되어 있는지 확인합니다.
다음 코드를 복사하여 새
.c
파일에 붙여넣습니다.이 페이지에서 코드 예제를 복사하여 파일의 지정된 줄에 붙여넣습니다.
1 2 3 4 int main(void) { 5 6 mongoc_uri_t* uri = NULL; 7 mongoc_client_t *client = NULL; 8 mongoc_database_t *database = NULL; 9 bson_t *ping = NULL, reply = BSON_INITIALIZER; 10 bson_error_t error; 11 12 mongoc_init(); 13 14 // Start example code here 15 16 // End example code here 17 18 database = mongoc_client_get_database (client, "admin"); 19 20 ping = BCON_NEW ("ping", BCON_INT32 (1)); 21 22 if (!mongoc_client_command_simple (client, "admin", ping, NULL, &reply, &error)) { 23 fprintf (stderr, "%s\n", error.message); 24 goto cleanup; 25 } 26 printf ("Pinged your deployment. You successfully connected to MongoDB!\n"); 27 28 cleanup: 29 bson_destroy (&reply); 30 bson_destroy (ping); 31 mongoc_database_destroy (database); 32 mongoc_client_destroy (client); 33 mongoc_uri_destroy (uri); 34 mongoc_cleanup (); 35 }
SCRAM-SHA-256
다음 코드는 SCRAM-SHA-256
인증 메커니즘 을 사용하여 인증하는 방법을 보여줍니다.
const char *uri = "mongodb://<percent-encoded username>:<percent-encoded password>@<hostname>:<port>/?authMechanism=SCRAM-SHA-256&authSource=<authentication database>"; mongoc_client_t *client = mongoc_client_new(uri);
SCRAM-SHA-256 인증에 대해 자세히 알아보려면 인증 가이드에서 SCRAM-SHA-256 를 참조하세요.
SCRAM-SHA-1
다음 코드는 SCRAM-SHA-1
인증 메커니즘 을 사용하여 인증하는 방법을 보여줍니다.
const char *uri = "mongodb://<percent-encoded username>:<percent-encoded password>@<hostname>:<port>/?authMechanism=SCRAM-SHA-1&authSource=<authentication database>"; mongoc_client_t *client = mongoc_client_new(uri);
SCRAM-SHA-1 인증에 대해 자세히 알아보려면 인증 가이드에서 SCRAM-SHA-1 를 참조하세요.
MONGODB X.509
다음 코드는 X.509
인증 메커니즘 을 사용하여 인증할 연결 URI를 만드는 방법을 보여줍니다.
mongoc_client_t *client; mongoc_ssl_opt_t ssl_opts = {0}; ssl_opts.pem_file = "mycert.pem"; const char *uri = "mongodb://<percent-encoded username>@<hostname>:<port>/?authMechanism=MONGODB-X509"; mongoc_client_t *client = mongoc_client_new(uri); mongoc_client_set_ssl_opts(client, &ssl_opts);
X.509 인증 에 학습 보려면 인증 가이드 에서 MONGODB-X509 를 참조하세요.
MONGODB-AWS
다음 섹션에서는 MONGODB-AWS
인증 메커니즘 사용하여 MongoDB 에 연결하는 방법을 보여줍니다. MONGODB-AWS
메커니즘을 사용하는 경우 C 운전자 나열된 순서대로 다음 소스에서 Amazon Web Services 자격 증명 조회 하려고 시도합니다.
연결 URI에 전달된 명명된 매개변수
환경 변수
Amazon Web Services EKS AssumeRoleWithWebIdentity 요청
ECS 컨테이너 메타데이터
EC2 인스턴스 메타데이터
각 섹션에서는 연결 URI 또는 대체 외부 소스에서 Amazon Web Services 자격 증명 검색할 때 MONGODB-AWS
로 인증하는 방법을 보여 줍니다.
Amazon Web Services 를 사용한 인증에 학습 보려면 인증 가이드 에서 MONGODB-Amazon Web Services 를 참조하세요.
연결 URI
다음 코드는 MONGODB-AWS
로 인증하기 위해 연결 URI에 Amazon Web Services 자격 증명 전달하는 방법을 보여줍니다.
const char *uri = "mongodb://<AWS IAM access key ID>:<AWS IAM secret access key>@<hostname>:<port>/?authMechanism=MONGODB-AWS"); mongoc_client_t *client = mongoc_client_new(uri);
연결 URI 자격 증명 검색하여 Amazon Web Services 로 인증하는 방법에 대해 자세히 학습 인증 가이드 의 연결 URI를 참조하세요.
외부 자격 증명
다음 코드는 환경 변수, ECS 메타데이터 또는 EC2 인스턴스 메타데이터 에서 자격 증명 가져올 때 MONGODB-AWS
로 인증하는 방법을 보여줍니다.
const char *uri = "mongodb://<hostname>:<port>/?authMechanism=MONGODB-AWS"); mongoc_client_t *client = mongoc_client_new(uri);
외부 자격 증명 을 얻어 Amazon Web Services 로 인증하는 방법에 학습 보려면 인증 가이드 의 다음 섹션을 참조하세요.