MongoDB\Driver\Manager::createClientEncryption

(mongodb >=1.7.0)

MongoDB\Driver\Manager::createClientEncryption — 새 ClientEncryption 객체 생성


설명

final public MongoDB\Driver\Manager::createClientEncryption(array $options): MongoDB\Driver\ClientEncryption

지정된 옵션을 사용하여 새 MongoDB\Driver\ClientEncryption 개체를 생성합니다.


매개변수

options

options

Option Type 설명
keyVaultClient MongoDB\Driver\Manager Manager는 데이터 키 쿼리를 별도의 MongoDB 클러스터로 라우팅하는 데 사용됩니다. 기본적으로 현재 Manager 및 클러스터가 사용됩니다.
keyVaultNamespace string 암호화 및 암호 해독에 사용되는 모든 데이터 키가 포함된 컬렉션을 나타내는 정규화된 네임스페이스(예: "databaseName.collectionName")입니다.
kmsProviders array 데이터 키를 암호화하는 데 사용되는 하나 이상의 KMS 공급자에 대한 구성이 포함된 문서입니다. 지원되는 공급자에는 "aws", "azure", "gcp""local"이 포함되며 하나 이상을 지정해야 합니다.

"aws"의 형식은 다음과 같습니다.

aws: {
    accessKeyId: <string>,
    secretAccessKey: <string>
}
                            

"azure"의 형식은 다음과 같습니다.

azure: {
    tenantId: <string>,
    clientId: <string>,
    clientSecret: <string>,
    identityPlatformEndpoint: <optional string> // Defaults to "login.microsoftonline.com"
}
                            

"gcp"의 형식은 다음과 같습니다.

gcp: {
    email: <string>,
    privateKey: <base64 string>|<MongoDB\BSON\Binary>,
    endpoint: <optional string> // Defaults to "oauth2.googleapis.com"
}
                            

"kmip"의 형식은 다음과 같습니다.

kmip: {
    endpoint: <string>
}
                            

"local"의 형식은 다음과 같습니다.

local: {
    // 96-byte master key used to encrypt/decrypt data keys
    key: <base64 string>|<MongoDB\BSON\Binary>
}
                            
tlsOptions array 하나 이상의 KMS 공급자에 대한 TLS 구성이 포함된 문서입니다. 지원되는 공급자는 "aws", "azure", "gcp""kmip"입니다. 모든 공급자는 다음 옵션을 지원합니다.
<provider>: {
    tlsCaFile: <optional string>,
    tlsCertificateKeyFile: <optional string>,
    tlsCertificateKeyFilePassword: <optional string>
}
                            

반환 값

MongoDB\Driver\ClientEncryption 인스턴스를 반환합니다.


오류/예외


변경로그

버전 설명
PECL mongodb 1.12.0 KMIP는 이제 클라이언트 측 암호화를 위한 KMS 공급자로 지원되며 "kmsProviders" 옵션에서 구성할 수 있습니다.

"tlsOptions" 옵션을 추가했습니다.

PECL mongodb 1.10.0 Azure 및 GCP는 이제 클라이언트 쪽 암호화를 위한 KMS 공급자로 지원되며 "kmsProviders" 옵션에서 구성할 수 있습니다. Base64로 인코딩된 문자열은 이제 "kmsProviders" 내의 옵션에 대해 MongoDB\BSON\Binary의 대안으로 허용됩니다.

기타