Wallet oracle
| Fiche express | |
|---|---|
| Type | Sécurisation des identifiants de connexion Oracle (Oracle Wallet) |
| Voir aussi | User droits privileges connection oracle · Tnsnames.ora |
Un wallet Oracle (via l'utilitaire mkstore) permet de stocker les couples identifiant/mot de passe de connexion en dehors des scripts shell, dans un fichier chiffré protégé par un mot de passe maître. Il fonctionne comme un keystore : les scripts se connectent via un alias, sans jamais manipuler le mot de passe réel en clair.
Référence externe : article de blog dbi-services sur l'utilisation d'un wallet pour chiffrer les mots de passe côté client Oracle.
Structure
Une fois créé, le wallet se compose de deux fichiers dans un répertoire dédié :
oracle@hostname:~/ [DB1] ll wallets/ -rw------- 1 oracle oinstall 3949 cwallet.sso -rw------- 1 oracle oinstall 3872 ewallet.p12
- cwallet.sso — wallet auto-ouvrant (single sign-on), pas de mot de passe demandé à
l'exécution — pratique pour des scripts automatisés, mais moins strict côté sécurité.
- ewallet.p12 — wallet standard, protégé par le mot de passe maître à chaque ouverture.
Création
Le mot de passe maître doit faire plus de 8 caractères pour créer/ouvrir le wallet :
mkstore -wrl /home/oracle/wallets -create
Ajouter des identifiants au wallet (alias TNS, utilisateur, mot de passe demandé de façon interactive) :
mkstore -wrl /home/oracle/wallets -createCredential mon_alias_tns mon_utilisateur
Activer l'utilisation du wallet pour les connexions
vi $TNS_ADMIN/sqlnet.ora
WALLET_LOCATION =
(SOURCE =
(METHOD = FILE)
(METHOD_DATA =
(DIRECTORY = /home/oracle/wallets)
)
)
SQLNET.WALLET_OVERRIDE = TRUE
Une fois configuré, la connexion se fait simplement via l'alias, sans mot de passe explicite :
sqlplus /@mon_alias_tns
Autres commandes
Changer mot de passe/utilisateur d'un credential :
mkstore -wrl wallet_location -modifyCredential alias_tns utilisateur
Supprimer un credential :
mkstore -wrl wallet_location -deleteCredential alias_tns
Lister les credentials :
mkstore -wrl wallet_location -listCredential
Voir aussi
- User droits privileges connection oracle — connexion classique par identifiant/mot de passe
- Tnsnames.ora — alias TNS utilisés par le wallet
- Schema — gestion des comptes applicatifs concernés