Docs Menu
Docs Home
/ / /
Scala드라이버
/

인증 메커니즘.

스칼라 운전자 MongoDB 엔터프라이즈 에서만 사용할 수 있는 메커니즘을 포함하여 모든 MongoDB 인증 메커니즘을 지원합니다.

인증 자격 증명은 MongoCredential 클래스의 인스턴스로 표시됩니다. MongoCredential 클래스에는 지원되는 각 인증 메커니즘에 대한 정적 팩토리 메서드가 포함되어 있습니다.

MongoDB 6.0 이상의 기본값 인증 메커니즘 은 SCRAM-SHA-256입니다.

서버 버전에 관계없이 기본 인증 메커니즘을 사용하여 인증하는 자격 증명을 만들려면 createCredential() 정적 팩토리 메서드를 사용하여 자격 증명을 만듭니다.

val user = "<db_username>" // the username
val source = "<source>" // the source where the user is defined
val password = ... // the password as a character array
val credential = MongoCredential.createCredential(user, source, password)
val mongoClient = MongoClient(MongoClientSettings
.builder()
.applyToClusterSettings(builder =>
builder.hosts(Collections.singletonList(ServerAddress("localhost", 27017))))
.credential(credential)
.build())

또는 인증 메커니즘을 명시적으로 지정하지 않고 연결 string 을 사용할 수 있습니다.

val mongoClient = MongoClient("mongodb://user1:pwd1@host1/?authSource=db1")

Salted Challenge-Response 인증 메커니즘(SCRAM)은 3.0 이후 MongoDB 의 기본값 인증 메커니즘 이었습니다. 는 IETF RFC 5802 SCRAM 표준을 기반으로 하며, 이 표준은 비밀번호로 사용자를 인증하기 위한 과제-응답 메커니즘의 구현 에 대한 권장사항 정의합니다.

이 메커니즘을 사용하려면 featureCompatibilityVersion 를 4.0 이상 버전으로 설정하다 해야 합니다.

SCRAM-SHA-256 유형의 자격 증명을 명시적으로 만들려면 createScramSha256Credential() 메서드를 사용합니다.

val user = "<db_username>" // the username
val source = "<source>" // the source where the user is defined
val password = ... // the password as a character array
val credential = MongoCredential.createScramSha256Credential(user, source, password)
val mongoClient = MongoClient(MongoClientSettings
.builder()
.applyToClusterSettings(builder =>
builder.hosts(Collections.singletonList(ServerAddress("localhost", 27017))))
.credential(credential)
.build())

또는 authMechanism=SCRAM-SHA-256를 명시적으로 지정하는 연결 string 을 사용할 수 있습니다.

val mongoClient = MongoClient("mongodb://user1:pwd1@host1/?authSource=db1&authMechanism=SCRAM-SHA-256")

x.509 메커니즘을 통해 MongoDB SSL 협상 중에 제시된 x.509 인증서를 사용하여 이름이 x.509 인증서의 고유 이름 에서 파생된 사용자를 인증합니다.

x.509 인증 인증서 유효성 검사 와 함께 SSL 연결을 사용해야 합니다. 이 유형의 자격 증명을 만들려면 createMongoX509Credential() 정적 팩토리 메서드를 사용합니다.

val credential = MongoCredential.createMongoX509Credential()
val mongoClient = MongoClient(MongoClientSettings
.builder()
.applyToClusterSettings(builder =>
builder.hosts(Collections.singletonList(ServerAddress("localhost", 27017))))
.credential(credential)
.build())

또는 authMechanism=MONGODB-X509를 명시적으로 지정하는 연결 string 을 사용할 수 있습니다.

val mongoClient = MongoClient("mongodb://subjectName@host1/?authMechanism=MONGODB-X509&ssl=true")

509 애플리케이션 에서 x.509 인증서를 사용하는 방법에 대해 자세히 학습 서버 매뉴얼의 x. 인증서를 클라이언트 인증하기 튜토리얼을 참조하세요.

돌아가기

보안

이 페이지의 내용