0% found this document useful (0 votes)
28 views12 pages

Wallet

Uploaded by

Jaya singh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
28 views12 pages

Wallet

Uploaded by

Jaya singh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 12

KRISHNA KUMAR VALUPADASU

Step 1: Create a User on the Target Database


SQL> select name, open_mode, log_mode from v$database;

NAME OPEN_MODE LOG_MODE


--------- -------------------- ------------
ORCLCDB READ WRITE ARCHIVELOG

SQL> select name, OPEN_MODE, OPEN_TIME, con_id from v$containers;

NAME OPEN_MODE OPEN_TIME


CON_ID
-------------------- ---------- -------------------------------------- ----
CDB$ROOT READ WRITE 02-DEC-24 12:55:06.544 PM -06:00 1
PDB$SEED READ ONLY 02-DEC-24 12:55:06.574 PM -06:00 2
TESTPDB READ WRITE 02-DEC-24 12:55:07.608 PM -06:00 3

SQL> select banner from v$version;

BANNER
---------------------------------------------------------------------------
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

SQL> create user c##test identified by krishna123 default tablespace users


temporary tablespace temp quota unlimited on users;

User created.

SQL> grant create session, connect to c##test;

Grant succeeded.

SQL> conn c##test


Enter password:
Connected.

Step 2: Create the Wallet in the Directory E:\ORACLE19\orclwal


PS E:\ORACLE19> mkdir orclwal
Directory: E:\ORACLE19

Mode LastWriteTime Length Name


---- ------------- ------ ----
d----- 03-12-2024 13:04 orclwal

PS E:\ORACLE19\orclwal> pwd

Path
----
E:\ORACLE19\orclwal

PS E:\ORACLE19\orclwal> orapki wallet create -wallet E:\ORACLE19\orclwal -


auto_login

Oracle PKI Tool Release 19.0.0.0.0 - Production


Version 19.3.0.0.0
Copyright (c) 2004, 2019, Oracle and/or its affiliates. All rights
reserved.

Enter password:

KRISHNA KUMAR VALUPADASU


KRISHNA KUMAR VALUPADASU

Enter password again:

Operation is successfully completed.

PS E:\ORACLE19\orclwal> pwd
Path
----
E:\ORACLE19\orclwal

PS E:\ORACLE19\orclwal> ls
Directory: E:\ORACLE19\orclwal
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 03-12-2024 13:57 194 cwallet.sso
-a---- 03-12-2024 13:57 0 cwallet.sso.lck
-a---- 03-12-2024 13:57 149 ewallet.p12
-a---- 03-12-2024 13:57 0 ewallet.p12.lck

PS E:\ORACLE19\orclwal> mkdir TNS_ADMIN

Directory: E:\ORACLE19\orclwal

Mode LastWriteTime Length Name


---- ------------- ------ ----
d----- 03-12-2024 13:58 TNS_ADMIN

PS E:\ORACLE19\orclwal> ls

Directory: E:\ORACLE19\orclwal
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 03-12-2024 13:58 TNS_ADMIN
-a---- 03-12-2024 13:57 194 cwallet.sso
-a---- 03-12-2024 13:57 0 cwallet.sso.lck
-a---- 03-12-2024 13:57 149 ewallet.p12
-a---- 03-12-2024 13:57 0 ewallet.p12.lck

PS E:\ORACLE19\orclwal\TNS_ADMIN> pwd

Path
----
E:\ORACLE19\orclwal\TNS_ADMIN

PS E:\ORACLE19\orclwal\TNS_ADMIN> ls

Directory: E:\ORACLE19\orclwal\TNS_ADMIN
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 05-12-2024 10:37 590 sqlnet.ora
-a---- 04-12-2024 13:22 1454 tnsnames.ora

Add Entry in tnsnames.ora


ORCLWAL=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = KRISHNA)(PORT = 1521))
)

KRISHNA KUMAR VALUPADASU


KRISHNA KUMAR VALUPADASU

(CONNECT_DATA =
(SERVICE_NAME = orclcdb.attlocal.net) ==> Ensure the specified
service exists.
)
)

Update sqlnet.ora with Wallet Location


SQLNET.AUTHENTICATION_SERVICES= (NTS)
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)

WALLET_LOCATION = (SOURCE = (METHOD = FILE) (METHOD_DATA =


(DIRECTORY=E:\ORACLE19\orclwal)))
SQLNET.WALLET_OVERRIDE = TRUE

Verify listener status and make all services are up.


PS E:\ORACLE19\orclwal\TNS_ADMIN> lsnrctl status

LSNRCTL for 64-bit Windows: Version 19.0.0.0.0 - Production on 05-DEC-2024


13:18:30

Copyright (c) 1991, 2019, Oracle. All rights reserved.

Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for 64-bit Windows: Version 19.0.0.0.0 -
Production
Start Date 02-DEC-2024 13:35:49
Uptime 2 days 23 hr. 42 min. 42 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File
E:\ORACLE19\WINDOWS.X64_193000_db_home\network\admin\listener.ora
Listener Log File
E:\ORACLE19\ORACLEME\diag\tnslsnr\KRISHNA\listener\alert\log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=KRISHNA)(PORT=1521)))

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=KRISHNA)(PORT=5500))(Security=(m
y_wallet_directory=E:\ORACLE19\ORACLEME\admin\orclcdb\xdb_wallet))(Presenta
tion=HTTP)(Session=RAW))
Services Summary...
Service "52448234712340b69f274bcc790ecfe0.attlocal.net" has 1 instance(s).
Instance "orclcdb", status READY, has 1 handler(s) for this service...
Service "64baad14383e44b68f19a4e3751ef58d.attlocal.net" has 1 instance(s).
Instance "orclcdb", status READY, has 1 handler(s) for this service...
Service "ORCLCDB" has 1 instance(s).
Instance "ORCLCDB", status UNKNOWN, has 1 handler(s) for this service...
Service "krishna.attlocal.net" has 1 instance(s).
Instance "orclcdb", status READY, has 1 handler(s) for this service...
Service "orclcdb.attlocal.net" has 1 instance(s).
Instance "orclcdb", status READY, has 1 handler(s) for this service...
Service "orclcdbXDB.attlocal.net" has 1 instance(s).
Instance "orclcdb", status READY, has 1 handler(s) for this service...
Service "testpdb.attlocal.net" has 1 instance(s).

KRISHNA KUMAR VALUPADASU


KRISHNA KUMAR VALUPADASU

Instance "orclcdb", status READY, has 1 handler(s) for this service...


The command completed successfully

Verify entry with tnsping


PS E:\ORACLE19\orclwal\TNS_ADMIN> tnsping ORCLWAL

TNS Ping Utility for 64-bit Windows: Version 19.0.0.0.0 - Production on 03-
DEC-2024 13:22:55

Copyright (c) 1997, 2019, Oracle. All rights reserved.

Used parameter files:


E:\ORACLE19\orclwal\TNS_ADMIN\sqlnet.ora

Used TNSNAMES adapter to resolve the alias


Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL =
TCP)(HOST = KRISHNA)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME =
orclcdb.attlocal.net)))
OK (10 msec)

Add Credentials to Wallet


PS E:\ORACLE19\orclwal> mkstore -wrl E:\ORACLE19\orclwal -createCredential
ORCLWAL c##test
Oracle Secret Store Tool Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
Copyright (c) 2004, 2019, Oracle and/or its affiliates. All rights
reserved.

Your secret/Password is missing in the command line


Enter your secret/Password:

Re-enter your secret/Password:

Enter wallet password:

PS E:\ORACLE19\orclwal> mkstore -wrl /u01/admin/orcl/wallet -listCredential


Oracle Secret Store Tool Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
Copyright (c) 2004, 2019, Oracle and/or its affiliates. All rights
reserved.

Enter wallet password:

\u01\admin\orcl\wallet (The system cannot find the path specified)


PS E:\ORACLE19\orclwal> mkstore -wrl E:\ORACLE19\orclwal -listCredential
Oracle Secret Store Tool Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
Copyright (c) 2004, 2019, Oracle and/or its affiliates. All rights
reserved.

Enter wallet password:

List credential (index: connect_string username)


1: ORCLWAL c##test

KRISHNA KUMAR VALUPADASU


KRISHNA KUMAR VALUPADASU

Validate TNS - to Connect with the User


PS E:\ORACLE19\orclwal> sqlplus c##test@ORCLWAL

SQL*Plus: Release 19.0.0.0.0 - Production on Wed Dec 4 12:22:12 2024


Version 19.3.0.0.0

Copyright (c) 1982, 2019, Oracle. All rights reserved.

Enter password:
Last Successful login time: Wed Dec 04 2024 11:49:54 -06:00

Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0

Set Environment Variables


$env:ORACLE_HOME = "E:\ORACLE19\WINDOWS.X64_193000_db_home"
$env:TNS_ADMIN = "E:\ORACLE19\orclwal\TNS_ADMIN"

Try Connecting Using Wallet


PS E:\ORACLE19\orclwal\TNS_ADMIN> sqlplus

SQL*Plus: Release 19.0.0.0.0 - Production on Thu Dec 5 12:10:54 2024


Version 19.3.0.0.0

Copyright (c) 1982, 2019, Oracle. All rights reserved.

Enter user-name: /@ORCLWAL


Last Successful login time: Thu Dec 05 2024 12:07:50 -06:00

Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0

SQL> show user;


USER is "C##TEST"

Steps for Adding a New User to an Existing Wallet


SQL> select name,open_mode,log_mode from v$database;

NAME OPEN_MODE LOG_MODE


--------- -------------------- ------------
ORCLCDB READ WRITE ARCHIVELOG

SQL> select name,OPEN_MODE,OPEN_TIME,con_id from v$containers;

NAME OPEN_MODE OPEN_TIME


CON_ID
-------------------- ---------- -------------------------------------------
-------------------------------- ----------
CDB$ROOT READ WRITE 04-DEC-24 12.55.06.544 PM -06:00
1

KRISHNA KUMAR VALUPADASU


KRISHNA KUMAR VALUPADASU

PDB$SEED READ ONLY 04-DEC-24 12.55.06.574 PM -06:00


2
TESTPDB READ WRITE 04-DEC-24 12.55.07.608 PM -06:00
3

SQL> select banner from v$version;

BANNER
---------------------------------------------------------------------------
-----
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

SQL> create user c##key identified by key123 default tablespace users


temporary tablespace temp quota unlimited on users;

User created.

SQL> grant create session, connect to c##key;

Grant succeeded.

SQL> conn c##key;


Enter password:
Connected.

Add Credential to Wallet for New User

PS E:\ORACLE19\orclwal> mkstore -wrl E:\ORACLE19\orclwal -createCredential


ORCLWAL c##key key123
Oracle Secret Store Tool Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
Copyright (c) 2004, 2019, Oracle and/or its affiliates. All rights
reserved.

Enter wallet password:

Secret Store error occurred:


oracle.security.pki.OracleSecretStoreException: Credential already exists

Note: We cannot use same TNS entry name to add a user, need a add separate
entry with different name like below:

PS E:\ORACLE19\orclwal\TNS_ADMIN> pwd

Path
----
E:\ORACLE19\orclwal\TNS_ADMIN

PS E:\ORACLE19\orclwal\TNS_ADMIN> ls

Directory: E:\ORACLE19\orclwal\TNS_ADMIN

Mode LastWriteTime Length Name


---- ------------- ------ ----
-a---- 05-12-2024 10:37 590 sqlnet.ora
-a---- 04-12-2024 13:22 1454 tnsnames.ORA

KRISHNA KUMAR VALUPADASU


KRISHNA KUMAR VALUPADASU

Update - tnsnames.ORA with below entry.

ORCLWAL1=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = KRISHNA)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orclcdb.attlocal.net)
)
)

PS E:\ORACLE19\orclwal\TNS_ADMIN> notepad tnsnames.ORA - save the file


after edit

PS E:\ORACLE19\orclwal\TNS_ADMIN> cat tnsnames.ORA


# tnsnames.ora Network Configuration File:
E:\ORACLE19\WINDOWS.X64_193000_db_home\NETWORK\ADMIN\tnsnames.ora
# Generated by Oracle configuration tools.

LISTENER_ORACLE =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))

ORACLR_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
(CONNECT_DATA =
(SID = CLRExtProc)
(PRESENTATION = RO)
)
)

ORCLWAL=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = KRISHNA)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orclcdb.attlocal.net)
)
)

ORCLWAL1=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = KRISHNA)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orclcdb.attlocal.net)
)
)

KRISHNA KUMAR VALUPADASU


KRISHNA KUMAR VALUPADASU

Verify ping for the newly added entry in tnanames.ora file:

PS E:\ORACLE19\orclwal> tnsping ORCLWAl1

TNS Ping Utility for 64-bit Windows: Version 19.0.0.0.0 - Production on 04-
DEC-2024 13:23:12

Copyright (c) 1997, 2019, Oracle. All rights reserved.

Used parameter files:


E:\ORACLE19\orclwal\TNS_ADMIN\sqlnet.ora

Used TNSNAMES adapter to resolve the alias


Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL =
TCP)(HOST = KRISHNA)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME =
orclcdb.attlocal.net)))
OK (20 msec)

Add new entry into wallet file:


PS E:\ORACLE19\orclwal> mkstore -wrl E:\ORACLE19\orclwal\ -createCredential
ORCLWAL1 c##key key123

Oracle Secret Store Tool Release 19.0.0.0.0 - Production


Version 19.3.0.0.0
Copyright (c) 2004, 2019, Oracle and/or its affiliates. All rights
reserved.

Enter wallet password: >> Enter wallet password

PS E:\ORACLE19\orclwal>

List credentials:
------------------

PS E:\ORACLE19\orclwal> mkstore -wrl E:\ORACLE19\orclwal -listCredential


Oracle Secret Store Tool Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
Copyright (c) 2004, 2019, Oracle and/or its affiliates. All rights
reserved.

Enter wallet password:

List credential (index: connect_string username)


2: ORCLWAL1 c##key
1: ORCLWAL c##test

Now we can see both entries in the wallet file:

PS E:\ORACLE19\orclwal\TNS_ADMIN> sqlplus

SQL*Plus: Release 19.0.0.0.0 - Production on Thu Dec 5 12:29:38 2024


Version 19.3.0.0.0

Copyright (c) 1982, 2019, Oracle. All rights reserved.

Enter user-name: /@ORCLWAL1


Last Successful login time: Thu Dec 05 2024 10:07:39 -06:00

Connected to:

KRISHNA KUMAR VALUPADASU


KRISHNA KUMAR VALUPADASU

Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production


Version 19.3.0.0.0

SQL> show user;


USER is "C##KEY"

Updating Credentials in Wallet

If a password changes in the database, you must update the wallet credential as follows:

PS E:\ORACLE19\orclwal> mkstore -wrl E:\ORACLE19\orclwal -modifyCredential


ORCLWAL c##test krishna123
Oracle Secret Store Tool Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
Copyright (c) 2004, 2019, Oracle and/or its affiliates. All rights
reserved.

Enter wallet password:>> Enter wallet password.

PS E:\ORACLE19\orclwal\TNS_ADMIN> sqlplus

SQL*Plus: Release 19.0.0.0.0 - Production on Thu Dec 5 12:34:17 2024


Version 19.3.0.0.0

Copyright (c) 1982, 2019, Oracle. All rights reserved.

Enter user-name: /@ORCLWAL


Last Successful login time: Thu Dec 05 2024 12:10:58 -06:00

Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0

SQL> show user;


USER is "C##TEST"

Steps to Add a PDB User to the Wallet

Create the user in the PDB:

SQL> show pdbs;

CON_ID CON_NAME OPEN MODE RESTRICTED


---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 TESTPDB READ WRITE NO
SQL> alter session set container=TESTPDB;

Session altered.

SQL> show pdbs;

CON_ID CON_NAME OPEN MODE RESTRICTED


---------- ------------------------------ ---------- ----------
3 TESTPDB READ WRITE NO

KRISHNA KUMAR VALUPADASU


KRISHNA KUMAR VALUPADASU

SQL> create user PDBTEST identified by krishna123 default tablespace users


temporary tablespace temp quota unlimited on users;

User created.

SQL> grant create session,connect to pdbtest;

Grant succeeded.

ADD ENTRY IN TNSNAMES.ORA FILE FOR PDB USER:


--------------------------------------------

Version 19.3.0.0.0
PS E:\ORACLE19\orclwal\TNS_ADMIN> cat .\tnsnames.ORA
# tnsnames.ora Network Configuration File:
E:\ORACLE19\WINDOWS.X64_193000_db_home\NETWORK\ADMIN\tnsnames.ora
# Generated by Oracle configuration tools.

LISTENER_ORACLE =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))

ORACLR_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
(CONNECT_DATA =
(SID = CLRExtProc)
(PRESENTATION = RO)
)
)

ORCLWAL=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = KRISHNA)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orclcdb.attlocal.net)
)
)

ORCLWAL1=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = KRISHNA)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orclcdb.attlocal.net)
)
)

TESTPDBWAL=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = KRISHNA)(PORT = 1521))
)
(CONNECT_DATA =

KRISHNA KUMAR VALUPADASU


KRISHNA KUMAR VALUPADASU

(SERVICE_NAME = testpdb.attlocal.net)
)
)

Validate Entry using Tnsping:

PS E:\ORACLE19\orclwal\TNS_ADMIN> tnsping TESTPDBWAL

TNS Ping Utility for 64-bit Windows: Version 19.0.0.0.0 - Production on 05-
DEC-2024 12:41:32

Copyright (c) 1997, 2019, Oracle. All rights reserved.

Used parameter files:


E:\ORACLE19\orclwal\TNS_ADMIN\sqlnet.ora

Used TNSNAMES adapter to resolve the alias


Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL =
TCP)(HOST = KRISHNA)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME =
testpdb.attlocal.net)))
OK (0 msec)

PS E:\ORACLE19\orclwal\TNS_ADMIN> sqlplus PDBTEST@TESTPDBWAL

SQL*Plus: Release 19.0.0.0.0 - Production on Thu Dec 5 12:46:51 2024


Version 19.3.0.0.0

Copyright (c) 1982, 2019, Oracle. All rights reserved.

Enter password:

Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0

SQL> show user;


USER is "PDBTEST"

ADD ENTRY INTO WALLET:

PS E:\ORACLE19\orclwal\TNS_ADMIN> mkstore -wrl E:\ORACLE19\orclwal -


createCredential TESTPDBWAL pdbtest;
Oracle Secret Store Tool Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
Copyright (c) 2004, 2019, Oracle and/or its affiliates. All rights
reserved.

Your secret/Password is missing in the command line


Enter your secret/Password:

Re-enter your secret/Password:

Enter wallet password:

PS E:\ORACLE19\orclwal\TNS_ADMIN> mkstore -wrl E:\ORACLE19\orclwal -


listCredential
Oracle Secret Store Tool Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
Copyright (c) 2004, 2019, Oracle and/or its affiliates. All rights
reserved.

KRISHNA KUMAR VALUPADASU


KRISHNA KUMAR VALUPADASU

Enter wallet password:

List credential (index: connect_string username)


3: TESTPDBWAL pdbtest
2: ORCLWAL1 c##key
1: ORCLWAL c##test

PS E:\ORACLE19\orclwal\TNS_ADMIN> sqlplus

SQL*Plus: Release 19.0.0.0.0 - Production on Thu Dec 5 12:56:17 2024


Version 19.3.0.0.0

Copyright (c) 1982, 2019, Oracle. All rights reserved.

Enter user-name: /@TESTPDBWAL


Last Successful login time: Thu Dec 05 2024 12:49:36 -06:00

Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0

SQL> show user;


USER is "PDBTEST"

Happy Learning ☺

KRISHNA KUMAR VALUPADASU

You might also like