2026-03-12 21:01:38
This commit is contained in:
106
wallet/wallet_01.txt
Normal file
106
wallet/wallet_01.txt
Normal file
@@ -0,0 +1,106 @@
|
||||
-- http://www.br8dba.com/store-db-credentials-in-oracle-wallet/
|
||||
-- https://franckpachot.medium.com/19c-ezconnect-and-wallet-easy-connect-and-external-password-file-8e326bb8c9f5
|
||||
|
||||
# create 2 users in a PDB
|
||||
alter session set container=NIHILUS;
|
||||
show con_name
|
||||
show pdbs
|
||||
|
||||
grant create session to WOMBAT identified by "CuteAnimal99#";
|
||||
grant create session to OTTER identified by "CuteAnimal@88";
|
||||
|
||||
|
||||
# create directory for tnsnames.ora
|
||||
export TNS_ADMIN=/home/oracle/tmp/tns
|
||||
mkdir -p ${TNS_ADMIN}
|
||||
|
||||
# add TNS alias in $TNS_ADMIN/tnsnames.ora
|
||||
WOMBAT_NIHILUS=(DESCRIPTION=
|
||||
(CONNECT_DATA=
|
||||
(SERVICE_NAME=NIHILUS)
|
||||
)
|
||||
(ADDRESS=
|
||||
(PROTOCOL=tcp)
|
||||
(HOST=bakura)
|
||||
(PORT=1521)
|
||||
)
|
||||
)
|
||||
|
||||
OTTER_NIHILUS=(DESCRIPTION=
|
||||
(CONNECT_DATA=
|
||||
(SERVICE_NAME=NIHILUS)
|
||||
)
|
||||
(ADDRESS=
|
||||
(PROTOCOL=tcp)
|
||||
(HOST=bakura)
|
||||
(PORT=1521)
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
# test connections using TNS alias
|
||||
sqlplus /nolog
|
||||
connect WOMBAT/"CuteAnimal99#"@WOMBAT_NIHILUS
|
||||
connect OTTER/"CuteAnimal@88"@OTTER_NIHILUS
|
||||
|
||||
|
||||
|
||||
# add following lines in $TNS_ADMIN/sqlnet.ora
|
||||
WALLET_LOCATION=(SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=/home/oracle/tmp/wdir)))
|
||||
SQLNET.WALLET_OVERRIDE=TRUE
|
||||
|
||||
|
||||
# create wallet
|
||||
export MY_WALLET_DIR=/home/oracle/tmp/wdir
|
||||
mkdir -p ${MY_WALLET_DIR}
|
||||
orapki wallet create -wallet ${MY_WALLET_DIR} -auto_login
|
||||
|
||||
# files generated in ${MY_WALLET_DIR}
|
||||
# check for 600 permissions on all theses files, otherwise the connection using the wallet will not work
|
||||
ewallet.p12.lck
|
||||
ewallet.p12
|
||||
cwallet.sso.lck
|
||||
cwallet.sso
|
||||
|
||||
|
||||
# add credentials
|
||||
mkstore -wrl ${MY_WALLET_DIR} -createCredential WOMBAT_NIHILUS WOMBAT "CuteAnimal99#"
|
||||
mkstore -wrl ${MY_WALLET_DIR} -createCredential OTTER_NIHILUS OTTER "CuteAnimal@88"
|
||||
|
||||
# list wallet credentials
|
||||
mkstore -wrl ${MY_WALLET_DIR} -listCredential
|
||||
|
||||
# update or delete entery
|
||||
mkstore -wrl ${MY_WALLET_DIR} -modifyCredential WOMBAT_NIHILUS WOMBAT "CuteAnimal99#"
|
||||
mkstore -wrl ${MY_WALLET_DIR} -deleteCredential OTTER_NIHILUS
|
||||
|
||||
# test connection using wallet
|
||||
sqlplus /@WOMBAT_NIHILUS
|
||||
show user
|
||||
|
||||
sqlplus /@OTTER_NIHILUS
|
||||
show user
|
||||
|
||||
# NOTES
|
||||
# if we want to store in the same wallet passwords of multiple users, we should use multiple TNS alias because the TNS alias is an unique key in the wallet
|
||||
# if the wallet has bee created with -auto_login option, the wallet password is required to add/modify/delete/list wallet credentials
|
||||
# but it is not required to establish connections
|
||||
|
||||
|
||||
# using ezConnect
|
||||
#################
|
||||
|
||||
# basicly, when using ezConnect we have the same "TNS alias", ex: //bakura:1521/NIHILUS
|
||||
# how to add multiples credentials? using dummy ezConnect parameter introduced in 19c:
|
||||
# https://franckpachot.medium.com/19c-easy-connect-e0c3b77968d7
|
||||
|
||||
# in our case we will add a dummy parameter "ConnectAs" in order to crerate distinct ezStrings depending by username
|
||||
mkstore -wrl ${MY_WALLET_DIR} -createCredential //bakura:1521/NIHILUS?ConnectAs=WOMBAT WOMBAT "CuteAnimal99#"
|
||||
mkstore -wrl ${MY_WALLET_DIR} -createCredential //bakura:1521/NIHILUS?ConnectAs=OTTER OTTER "CuteAnimal@88"
|
||||
|
||||
sqlplus /@//bakura:1521/NIHILUS?ConnectAs=WOMBAT
|
||||
show user
|
||||
|
||||
sqlplus /@//bakura:1521/NIHILUS?ConnectAs=OTTER
|
||||
show user
|
||||
|
||||
Reference in New Issue
Block a user