Tạo và quản lý Oracle Wallet
Xem thêm các chuyên mục:

Là một website được viết trên công nghệ web Flutter vì vậy hỗ trợ rất tốt cho người học, kể cả những người học khó tính nhất.
Hiện tại website đang tiếp tục được cập nhập nội dung cho phong phú và đầy đủ hơn. Mong các bạn nghé thăm và ủng hộ website mới của chúng tôi.



Tài liệu được viết dựa trên:
-
Oracle 11g (OK for 12c)
Oracle Wallet là cách để lưu trữ các thông tin kết nối tới các database nằm trên nhiều tên miền (domain) khác nhau. Bảng dưới đây minh họa nội dung mà một Wallet chứa.
DB Connection String | Username | Passwod |
(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = myserver1)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = db11g) ) ) |
dev | dev001 |
(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = myserver2)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = db12c) ) ) |
prod | prod123 |
Như vậy Wallet chứa các chứng chỉ (credentials) để bạn có thể truy cập vào một database nào đó. Mà khi thông tin về database này thay đổi, bạn có thể cập nhập lại wallet. Ứng dụng của bạn có thể sử dụng các chứng chỉ trên Wallet để truy cập vào một database thay vì tự quản lý thông tin truy cập.

Oracle Wallet lưu trữ các thông tin chứng chỉ vào một tập tin. Sẽ rất nguy hiểm nếu hacker sao chép tập tin này và sử dụng ở máy của họ. Rất may Oracle (11&12) cho phép bạn tạo ra các Wallet địa phương, mà nó chỉ có tác dụng trên máy tính tạo ra nó.
Bạn phải mở CMD với quyền Adminstrator.


CD tới thư mục bin của Oracle:

Các Wallet có thể được copy từ máy này sang một máy tính khác, đó chính là lỗ hổng bảo mật, vì vậy trong Oracle Release 2 trở đi, bạn có thể ngăn chặn hoạt động của Wallet nếu nó được copy sang một máy tính khác bằng cách tạo Wallet địa phương sử dụng lệnh "orapki", thay vì sử dụng "mkstore" như của Oracle 10g.
Sử dụng lệnh tạo Wallet "orapki".
# wallet_location là đường dẫn thư mục tạo wallet.
orapki wallet create -wallet <wallet_location> -pwd <password> -auto_login_local
# Ví dụ:
orapki wallet create -wallet C:/DevPrograms/mywallet -pwd mysecret1 -auto_login_local


Wallet đã được tạo ra, nó gồm 2 file cwallet.sso & ewallet.p12
Hiển thị thông tin wallet:
# Cú pháp:
orapki wallet display -wallet <wallet-location>
# Ví dụ:
orapki wallet display -wallet C:/DevPrograms/mywallet


# Cú pháp:
orapki wallet change_pwd -wallet <wallet-location> -oldpwd <old password> -newpwd <new password>
# Ví dụ:
orapki wallet change_pwd -wallet C:/DevPrograms/mywallet -oldpwd mysecret1 -newpwd mysecret2
Bạn phải mở CMD với quyền Adminstrator.


CD tới thư mục bin của Oracle:

Sử dụng lệnh tạo wallet:
# wallet_location là đường dẫn thư mục tạo wallet.
mkstore -wrl <wallet_location> -create
# Ví dụ:
mkstore -wrl C:/DevPrograms/db11g/product/11.2.0/dbhome_1/mywallet -create

Nhập mật khẩu cho wallet:

Chú ý: Mật khẩu bạn nhập vào có thể không đúng tiêu chuẩn và bạn sẽ nhận được một thông báo lỗi, chẳng hạn mật khẩu nhập vào không đủ 8 ký tự.

Nhập lại mật khẩu: mysecret1

Wallet đã được tạo ra, nó gồm 2 file cwallet.sso & ewallet.p12

mkstore -wrl <wallet_location> -createCredential <db_connect_string> <username> <password>
DB Connection String | Username | Passwod |
(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = myserver1)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = db11g) ) ) |
dev | dev001 |
(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = myserver2)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = db12c) ) ) |
prod | prod123 |
Ví dụ:
# <wallet_location>
C:\DevPrograms\mywallet
# <db_connect_string>
"(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=myserver1)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=db11g)))"