wallet

来源:互联网 发布:www.js lottery.com 编辑:程序博客网 时间:2024/05/18 02:06


oracle wallet 即内部加密技术TDE(Transparent Data Encryption
通过使用Oracle Wallet达到任意用户不使用密码登录数据库(非操作系统认证方式), 这对在shell中要使用用户密码登录数据库进行操作的脚本来说是非常有用的, 
可以不暴露用户密码. 比如在Oracle客户端通过mkstore命令设置Wallet认证信息, 然后通过"sqlplus /@connect_string"方式就可以直接连接数据库.


oracle@rac1 ~]$ $ORACLE_HOME/bin/mkstore
Oracle Secret Store Tool: 版本 11.2.0.1.0 - Production
版权所有 (c) 2004, 2009, Oracle 和/或其子公司。保留所有权利。


mkstore [-wrl wrl] [-create] [-createSSO] [-createLSSO] [-createALO] [-delete] [-deleteSSO] [-list] [-createEntry alias secret] [-viewEntry alias] [-modifyEntry alias secret] [-deleteEntry alias] [-createCredential connect_string username password] [-listCredential] [-modifyCredential connect_string username password] [-deleteCredential connect_string] [-help] [-nologo]

1.密码长度要是8位以上。 
2.密码最大长度没有限制。 
3.密码要有字符与数据。

1 、创建wallet:
[oracle@rac1 ~]$ $ORACLE_HOME/bin/mkstore -wrl $ORACLE_HOME/network/admin/wallet -create 
Oracle Secret Store Tool: 版本 11.2.0.1.0 - Production
版权所有 (c) 2004, 2009, Oracle 和/或其子公司。保留所有权利。
输入口令:           
再次输入口令:           
PKI-02001: 以下位置已存在 Wallet: /u01/app/oracle/product/11.2.0/dbhome_2/network/admin/wallet


2、建立网络连接串

ora10g =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.116)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = rac)
    )
  )

3、加入用户认证信息到wallet
[oracle@test wallet]$  $ORACLE_HOME/bin/mkstore -wrl $ORACLE_HOME/network/admin/wallet  -createCredential ora10g  scott tiger123
Enter password:            
Create credential oracle.security.client.connect_string1
一个网络连接只能给一个用户使用

4、验证用户信息以及加入到wallet
[oracle@rac1 admin]$ $ORACLE_HOME/bin/mkstore -wrl $ORACLE_HOME/network/admin/wallet -listCredential
Oracle Secret Store Tool: 版本 11.2.0.1.0 - Production
版权所有 (c) 2004, 2009, Oracle 和/或其子公司。保留所有权利。
输入 Wallet 口令:           
Enter password:            
List credential (index: connect_string username)
1: ora10g scott

5、加入wallet 位置到sqlnet.ora里面
[grid@rac1 admin]$ vi sqlnet.ora 
WALLET_LOCATION=(SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=/u01/app/oracle/product/10.2.0/db_1/network/admin/wallet))) 
SQLNET.WALLET_OVERRIDE=TRUE

登录OWM(图形界面), 确认是否自动登录(默认是), 本步只是确认一下可忽略 
$ $ORACLE_HOME/bin/owm & 
先open目录/u01/app/oracle/product/10.2.0/db_1/network/admin/wallet下的Wallet, 然后从菜单栏里查看"Auto Login"是否已经选中.


6、查看wallet里创建的用户
[oracle@rac1 admin]$  mkstore -wrl  $ORACLE_HOME/network/admin/wallet  -list
Oracle Secret Store Tool: 版本 11.2.0.1.0 - Production
版权所有 (c) 2004, 2009, Oracle 和/或其子公司。保留所有权利。
输入 Wallet 口令:           
Oracle 密钥存储条目: 
oracle.security.client.connect_string1
oracle.security.client.password1

oracle.security.client.username1



[oracle@rac1 admin]$  mkstore -wrl  $ORACLE_HOME/network/admin/wallet  -listCredential  
Oracle Secret Store Tool: 版本 11.2.0.1.0 - Production
版权所有 (c) 2004, 2009, Oracle 和/或其子公司。保留所有权利。
输入 Wallet 口令:           
List credential (index: connect_string username)
1: ora10g scott


7、测试:
[oracle@test wallet]$ sqlplus /@ora10g
SQL*Plus: Release 10.2.0.1.0 - Production on Sat Sep 28 16:56:55 2013
Copyright (c) 1982, 2005, Oracle.  All rights reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
SQL> show user
USER is "SCOTT"

8、修改用户密码
SQL> alter user scott identified by tiger;
User altered.

SQL> exit
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
[oracle@test wallet]$  $ORACLE_HOME/bin/mkstore -wrl $ORACLE_HOME/network/admin/wallet/ -modifyCredential  ora10g  scott tiger 
Enter password:            
Modify credential 
Modify 1

[oracle@test wallet]$ sqlplus /@ora10g
SQL*Plus: Release 10.2.0.1.0 - Production on Sat Sep 28 17:03:27 2013
Copyright (c) 1982, 2005, Oracle.  All rights reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options

9、删除wallet中的用户
[oracle@rac1 bin]$ $ORACLE_HOME/bin/mkstore -wrl $ORACLE_HOME/network/admin/wallet -deleteCredential db_utest;
Oracle Secret Store Tool: 版本 11.2.0.1.0 - Production
版权所有 (c) 2004, 2009, Oracle 和/或其子公司。保留所有权利。
输入 Wallet 口令:           
Delete credential 
Delete 1




























































原创粉丝点击