-
Notifications
You must be signed in to change notification settings - Fork 231
[Encryption] Add autoEncryption
configuration to the client
#889
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Encryption] Add autoEncryption
configuration to the client
#889
Conversation
9d2e2ba
to
60cc9c2
Compare
1f7c5cd
to
d7472e8
Compare
2bf901b
to
751082b
Compare
751082b
to
46d9784
Compare
This is not complete as we don't inject the |
docs/config.rst
Outdated
bypassAutoEncryption: false # Disables auto-encryption | ||
keyVaultClient: null # Service ID of a MongoDB\Driver\Manager for the key vault | ||
keyVaultNamespace: null # The namespace for the key vault collection (e.g., "encryption.__keyVault") | ||
kmsProviders: [] # Configuration for Key Management System providers (see specific examples above) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should be kmsProvider
since we're only accepting a single provider at this time.
docs/config.rst
Outdated
'bypassAutoEncryption' => false, // Disables auto-encryption | ||
'keyVaultClient' => null, // Service ID of a MongoDB\Driver\Manager for the key vault | ||
'keyVaultNamespace' => null, // The namespace for the key vault collection (e.g., "encryption.__keyVault") | ||
'kmsProviders' => [ // Configuration for Key Management System providers |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Single KMS provider here as well
docs/encryption.rst
Outdated
kmsProviders: | ||
local: | ||
key: "YOUR_BASE64_KEY" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
kmsProvider
docs/encryption.rst
Outdated
'kmsProviders' => [ | ||
'local' => [ | ||
'key' => 'YOUR_BASE64_KEY', | ||
], | ||
], |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
kmsProvider
]); | ||
}; | ||
|
||
Supported KMS Providers |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we want to duplicate the full list here? If so, we may want to properly explain the individual options required for each KMS provider and where to obtain them.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I removed the duplicated list and added a link to https://www.php.net/manual/en/mongodb-driver-manager.construct.php
Queryable Encryption (QE) | ||
------------------------- | ||
|
||
Queryable Encryption (QE) allows you to run queries on encrypted fields. To use QE, you may need to provide an ``encryptedFieldsMap`` or use a schema map, depending on your driver and use case. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We can adapt this to mention the dump command I'm working on
autoEncryption
configuration to the clientautoEncryption
configuration to the client
bd5212a
into
doctrine:feature/queryable-encryption
Introduce the configuration of the
autoEncryption
driver option in order to support automatic Client Side Field Level Encryption.This requires a MongoDB Atlas or Entreprise cluster.