Configuration des fonctionnalités d'Oracle Database pour Oracle Exadata Database Service sur une infrastructure Exascale
Découvrez comment configurer Oracle Multitenant, le cryptage de tablespace et d'autres options pour votre instance Oracle Exadata Database Service on Exascale Infrastructure.
- Utilisation d'Oracle Multitenant sur une instance Oracle Exadata Database Service sur une infrastructure Exascale
Découvrez les exigences relatives aux différentes fonctionnalités lors de l'utilisation d'environnements colocatifs dans Oracle Exadata Database Service sur une infrastructure Exascale. - Gestion du cryptage de tablespace
Découvrez comment le cryptage de tablespace est implémenté dans Oracle Exadata Database Service sur une infrastructure Exascale
Rubrique parent : Guides pratiques
Utilisation d'Oracle Multitenant sur une instance Oracle Exadata Database Service sur une infrastructure Exascale
Découvrez les exigences relatives aux différentes fonctionnalités lors de l'utilisation d'environnements colocatifs dans Oracle Exadata Database Service sur une infrastructure Exascale.
Lorsque vous créez une instance Oracle Exadata Database Service sur une instance d'infrastructure Exascale, un environnement Oracle Multitenant est créé.
L'architecture colocative permet à Oracle Database de servir de base de données Conteneur colocative contenant zéro, une ou plusieurs bases de données pluggables. Une base de données pluggable est une collection portable de schémas, d'objets de schéma et d'objets non-schéma qui apparaît sous la forme d'une base de données non Conteneur pour un client Oracle Net Services.
Afin d'utiliser le cryptage transparent des données Oracle dans une base de données pluggable, vous devez créer et activer une clé de cryptage maître pour la base de données pluggable.
Dans un environnement colocatif, chaque base de données pluggable possède sa propre clé de cryptage maître qui est stockée dans un fichier de clés unique utilisé par tous les conteneurs.
Vous devez exporter et importer la clé de cryptage maître pour toute base de données pluggable cryptée que vous connectez à la base de données Conteneur de votre instance d'infrastructure Oracle Exadata Database Service sur Exascale.
Si la base de données pluggable source est cryptée, vous devez exporter la clé de cryptage maître, puis l'importer.
Vous pouvez exporter et importer toutes les clés de cryptage maître TDE qui appartiennent à la base de données pluggable en exportant puis en important les clés de cryptage maître TDE à partir d'une base de données pluggable. L'export et l'import de clés de cryptage maître TDE prennent en charge les opérations de déconnexion et de connexion de base de données pluggable. Au cours de la déconnexion et de la connexion d'une base de données pluggable, toutes les clés de cryptage maître TDE qui lui appartiennent, ainsi que les métadonnées, sont impliquées.
Reportez-vous à Utilisation de Transparent Data Encryption avec d'autres fonctionnalités Oracle dans le guide de sécurité avancée Oracle Database.
Reportez-vous à Gestion des clés d'administration dans Référence de langage SQL Oracle Database.
- Procédure pour déterminer si une clé de cryptage doit être créée ou activée pour la base de données pluggable
- Procédure de création et d'activation de la clé de cryptage maître dans une base de données pluggable
- Procédure d'export et d'import d'une clé de cryptage maître
Rubriques connexes
Procédure pour déterminer si une clé de cryptage doit être créée ou activée pour la base de données pluggable
- Appelez SQL*Plus et connectez-vous à la base de données en tant qu'utilisateur
SYS
disposant de privilègesSYSDBA
. -
Définissez le conteneur sur la base de données pluggable :
SQL> ALTER SESSION SET CONTAINER = pdb;
-
Interrogez
V$ENCRYPTION_WALLET
comme suit :SQL> SELECT wrl_parameter, status, wallet_type FROM v$encryption_wallet;
Si la colonne
STATUS
contient la valeurOPEN_NO_MASTER_KEY
, vous devez créer et activer la clé de cryptage maître.
Procédure de création et d'activation de la clé de cryptage maître dans une base de données pluggable
-
Définissez le conteneur sur la base de données pluggable :
SQL> ALTER SESSION SET CONTAINER = pdb;
-
Créez et activez une clé de cryptage maître dans la base de données pluggable en exécutant la commande suivante :
SQL> ADMINISTER KEY MANAGEMENT SET KEY USING TAG 'tag' FORCE KEYSTORE IDENTIFIED BY keystore-password WITH BACKUP USING 'backup_identifier';
Dans la commande précédente :
keystore-password
est le mot de passe du fichier de clés. Par défaut, le mot de passe du fichier de clés est défini sur la valeur du mot de passe d'administration spécifié lors de la création de la base de données.- La clause facultative
USING TAG 'tag'
peut être utilisée pour associer une balise à la nouvelle clé de cryptage maître. - La clause
WITH BACKUP
et la clause facultativeUSING 'backup_identifier'
peuvent être utilisées pour créer une sauvegarde du fichier de clés avant de créer la clé de cryptage maître.
Reportez-vous également à
ADMINISTER KEY MANAGEMENT
dans la référence de langage SQL Oracle Database pour la version 19, 18 ou 12.2.Remarque
Pour activer les opérations de gestion des clés lorsque le fichier de clés est en cours d'utilisation, Oracle Database 12c version 2 (et versions ultérieures) inclut l'option
FORCE KEYSTORE
avec la commandeADMINISTER KEY MANAGEMENT
. Cette option est également disponible pour Oracle Database 12c version 1 avec le package de patches d'octobre 2017 (ou ultérieur).Si le package de patches d'octobre 2017 (ou ultérieur) n'est pas installé sur la base de données Oracle Database 12c version 1, vous pouvez effectuer les étapes suivantes :
- Fermez le fichier de clés.
- Ouvrez le fichier de clés basé sur un mot de passe.
- Créez et activez une clé de cryptage maître dans la base de données pluggable en utilisant
ADMINISTER KEY MANAGEMENT
sans l'optionFORCE KEYSTORE
. - Mettez à jour le fichier de clés pour la connexion automatique en utilisant
ADMINISTER KEY MANAGEMENT
avec l'optionCREATE AUTO_LOGIN KEYSTORE FROM KEYSTORE
.
-
Interrogez à nouveau
V$ENCRYPTION_WALLET
afin de vérifier que la colonneSTATUS
est définie surOPEN
:SQL> SELECT wrl_parameter, status, wallet_type FROM v$encryption_wallet;
-
Interrogez
V$INSTANCE
et notez la valeur présente dans la colonneHOST_NAME
, qui identifie le serveur de base de données contenant les fichiers de clés récemment mis à jour :SQL> SELECT host_name FROM v$instance;
-
Copiez les fichiers de clés mis à jour sur tous les autres serveurs de base de données.
Pour distribuer le fichier de clés mis à jour, vous devez effectuer les actions suivantes sur chaque serveur de base de données qui ne contient pas les fichiers de clés mis à jour :
-
Connectez-vous au conteneur racine et interrogez
V$ENCRYPTION_WALLET
. Notez l'emplacement du fichier de clés présent dans la colonneWRL_PARAMETER
:SQL> SELECT wrl_parameter, status FROM v$encryption_wallet;
-
Copiez les fichiers de clés mis à jour.
Vous devez copier tous les fichiers de clés mis à jour à partir d'un serveur de base de données déjà mis à jour. Utilisez l'emplacement de fichier de clés observé dans la colonne
WRL_PARAMETER
deV$ENCRYPTION_WALLET
.
Ouvrez le fichier de clés mis à jour :SQL> ADMINISTER KEY MANAGEMENT SET KEYSTORE open FORCE KEYSTORE IDENTIFIED BY keystore-password CONTAINER=all;
Remarque
Pour activer les opérations de gestion des clés lorsque le fichier de clés est en cours d'utilisation, Oracle Database 12c version 2 (et versions ultérieures) inclut l'option
FORCE KEYSTORE
avec la commandeADMINISTER KEY MANAGEMENT
. Cette option est également disponible pour Oracle Database 12c version 1 avec le package de patches d'octobre 2017 (ou ultérieur).Si le package de patches d'octobre 2017 (ou ultérieur) n'est pas installé sur la base de données Oracle Database 12c version 1, vous pouvez effectuer les étapes suivantes :
- Fermez le fichier de clés avant de copier les fichiers de clés mis à jour.
- Copiez les fichiers de clés mis à jour.
- Ouvrez le fichier de clés mis à jour en utilisant
ADMINISTER KEY MANAGEMENT
sans l'optionFORCE KEYSTORE
.
-
-
Interrogez
GV$ENCRYPTION_WALLET
pour vérifier que la colonneSTATUS
est définie surOPEN
dans toutes les instances de base de données :SQL> SELECT wrl_parameter, status, wallet_type FROM gv$encryption_wallet;
Procédure d'export et d'import d'une clé de cryptage maître
- Exportez la clé de cryptage maître.
- Appelez SQL*Plus et connectez-vous à la base de données pluggable.
-
Exécutez la commande suivante :
SQL> ADMINISTER KEY MANAGEMENT EXPORT ENCRYPTION KEYS WITH SECRET "secret" TO 'filename' IDENTIFIED BY keystore-password;
- Importez la clé de cryptage maître.
- Appelez SQL*Plus et connectez-vous à la base de données pluggable.
-
Exécutez la commande suivante :
SQL> ADMINISTER KEY MANAGEMENT IMPORT ENCRYPTION KEYS WITH SECRET "secret" FROM 'filename' IDENTIFIED BY keystore-password;
Gestion du cryptage de tablespace
Découvrir comment le cryptage de tablespace est implémenté dans Oracle Exadata Database Service sur une infrastructure Exascale
Par défaut, tous les tablespaces que vous créez dans une base de données Exadata sont cryptés.
Toutefois, les tablespaces créés en même temps que la base de données peuvent ne pas être cryptés par défaut.
- Pour les bases de données qui utilisent Oracle Database 12c version 2 ou ultérieure, seuls les tablespaces
USERS
créés en même temps que la base de données sont cryptés. Aucun autre tablespace n'est crypté, y compris les tablespaces autres queUSERS
dans les éléments suivants :- Conteneur racine (
CDB$ROOT
) - Base de données pluggable prédéfinie (
PDB$SEED
) - Première base de données pluggable, créée en même temps que la base de données
- Conteneur racine (
- Pour les bases de données qui utilisent Oracle Database 12c version 1 ou Oracle Database 11g, aucun des tablespaces créés en même temps que la base de données n'est crypté.
Pour plus d'informations sur l'implémentation du cryptage de tablespace dans Exadata et sur son impact sur divers scénarios de déploiement, reportez-vous aux sections suivantes :
Comportement de cryptage de tablespace Oracle Database dans Oracle Cloud (ID de document 2359020.1).
Création de tablespaces cryptés
Les tablespaces créés par l'utilisateur sont cryptés par défaut.
Par défaut, les tablespaces créés à l'aide de la commande SQL CREATE TABLESPACE
sont cryptés avec l'algorithme AES128. Vous n'avez pas besoin d'inclure la clause USING 'encrypt_algorithm'
pour utiliser le cryptage par défaut.
Vous pouvez indiquer un autre algorithme pris en charge en incluant la clause USING 'encrypt_algorithm' dans la commande CREATE TABLESPACE. Les algorithmes pris en charge sont AES256, AES192, AES128 et 3DES168.
Gestion du cryptage de tablespace
Vous pouvez gérer le fichier de clés logiciel (également appelé portefeuille Oracle dans Oracle Database 11g) et la clé de cryptage maître, et déterminer si le cryptage est activé par défaut.
Gestion de la clé de cryptage maître
Le cryptage de tablespace utilise une architecture à deux niveaux reposant sur les clés pour crypter (et décrypter) les tablespaces de façon transparente. La clé de cryptage maître est stockée dans un module de sécurité externe (fichier de clés logiciel). Cette clé de cryptage maître sert à crypter la clé de cryptage de tablespace, qui sert à son tour à crypter et à décrypter les données du tablespace.
Lorsqu'une base de données est créée sur une instance Exadata Cloud Service, un fichier de clés logiciel local est créé. Le fichier de clés est local sur les noeuds de calcul et protégé par le mot de passe d'administration indiqué lors du processus de création de la base de données. Le fichier de clés logiciel pour la connexion automatique est ouvert systématiquement au démarrage de la base de données.
Vous pouvez modifier (par rotation) la clé de cryptage maître à l'aide de l'instruction ADMINISTER KEY MANAGEMENT SQL
. Par exemple :
SQL> ADMINISTER KEY MANAGEMENT SET ENCRYPTION KEY USING TAG 'tag'
IDENTIFIED BY password WITH BACKUP USING 'backup';
keystore altered.
Reportez-vous à "Gestion de la clé de cryptage maître TDE" dans le guide de sécurité avancée Oracle Database.
Contrôle du cryptage de tablespace par défaut
Le paramètre d'initialisation ENCRYPT_NEW_TABLESPACES
contrôle le cryptage par défaut des nouveaux tablespaces. Dans les bases de données Exadata, ce paramètre est défini par défaut sur CLOUD_ONLY
.
Les valeurs de ce paramètre sont les suivantes.
Valeur | Description |
---|---|
ALWAYS
|
Lors de leur création, les tablespaces sont cryptés de manière transparente avec l'algorithme AES128, sauf si un autre algorithme est spécifié dans la clause ENCRYPTION .
|
CLOUD_ONLY
|
Les tablespaces créés dans une base de données Exadata sont cryptés de manière transparente avec l'algorithme AES128, sauf si un autre algorithme est indiqué dans la clause ENCRYPTION . Pour les bases de données non cloud, les tablespaces sont cryptés uniquement si la clause ENCRYPTION est indiquée. ENCRYPTION est la valeur par défaut.
|
DDL
|
Lors de leur création, les tablespaces ne sont pas cryptés de manière transparente par défaut. Ils sont cryptés uniquement si la clause ENCRYPTION est indiquée.
|
Avec Oracle Database 12c version 2 (12.2) ou ultérieure, vous ne pouvez plus créer de tablespace non crypté dans une base de données Exadata. Un message d'erreur est renvoyé si vous définissez
ENCRYPT_NEW_TABLESPACES
sur DDL
et que vous exécutez une commande CREATE TABLESPACE
sans spécifier de clause ENCRYPTION
.
Rubriques connexes