​ORACLE wallet实现无需输入用户名与密码登陆数据库 注意修改目录权限

wallet权限  linux  777 windows 需要修改.lck文件的owner

   

在ORACLE 10G前,我们在SHELL或JDBC中连接数据库时,都需要输入用户名与密码,并且都是明文。从1OGR2开始,ORACLE提供wallet这个工具,可以实现无需输入用户名与密码就可以登陆数据库,如下:

    一般情况:sqlplus scott/oracle@htzdg

    用wallet后:sqlplus /@htzdg

    测试环境:

    server :solaris 10,oracle 11gr2

    client :win 7,oracle11gr2

    登陆端配置tnsnames.ora文件,增加下面几行

 
  1. HTZDG = 
  2.   (DESCRIPTION = 
  3.     (ADDRESS_LIST = 
  4.       (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.100.30)(PORT = 1521)) 
  5.     ) 
  6.     (CONNECT_DATA = 
  7.       (SERVER = DEDICATED) 
  8.       (SERVICE_NAME = htzdg) 
  9.     ) 
  10.   ) 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.

    测试是否可以正常解析

 
  1. C:\Users\luoping>tnsping htzdg 
  2. TNS Ping Utility for 32-bit Windows: Version 11.2.0.1.0 - Production on 29-8月 - 
  3. 2012 21:40:40 
  4. Copyright (c) 1997, 2010, Oracle.  All rights reserved. 
  5. 已使用的参数文件: 
  6. D:\app\luoping\product\11.2.0\client_1\network\admin\sqlnet.ora 
  7. 已使用 TNSNAMES 适配器来解析别名 
  8. 尝试连接 (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.1 
  9. 68.100.30)(PORT = 1521))) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = h 
  10. tzdg))) 
  11. OK (40 毫秒) 
  12. C:\Users\luoping> 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.

   下面是开始配置wallet

    1,创建一个wallet

 
  1. D:\app\luoping\product\11.2.0\client_1\BIN>mkstore -wrl D:\app\luoping\product\11.2.0\client_1\pstore -create 
  2. Oracle Secret Store Tool: 版本 11.2.0.1.0 - Production 
  3. 版权所有 (c) 2004, 2009, Oracle 和/或其子公司。保留所有权利。 
  4. 输入口令: 
  5. 再次输入口令: 
  6. D:\app\luoping\product\11.2.0\client_1\BIN>cd ../ 
  7. D:\app\luoping\product\11.2.0\client_1>cd pstore 
  8. D:\app\luoping\product\11.2.0\client_1\pstore>dir 
  9.  驱动器 D 中的卷是 DATA 
  10.  卷的序列号是 D60C-09BD 
  11.  D:\app\luoping\product\11.2.0\client_1\pstore 的目录 
  12. 2012/08/29  15:39    <DIR>          . 
  13. 2012/08/29  15:39    <DIR>          .. 
  14. 2012/08/29  15:39             3,589 cwallet.sso 
  15. 2012/08/29  15:39             3,512 ewallet.p12 
  16.                2 个文件          7,101 字节 
  17.                2 个目录 368,717,893,632 可用字节 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.

   2,启动wallet与指定wallet位置

 
  1. D:\app\luoping\product\11.2.0\client_1\network\admin>more sqlnet.ora 
  2. # sqlnet.ora Network Configuration File: D:\app\luoping\product\11.2.0\client_1\ 
  3. network\admin\sqlnet.ora 
  4. # Generated by Oracle configuration tools. 
  5. # This file is actually generated by netca. But if customers choose to 
  6. # install "Software Only", this file wont exist and without the native 
  7. # authentication, they will not be able to connect to the database on NT. 
  8. SQLNET.AUTHENTICATION_SERVICES= (NTS) 
  9. NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT) 
  10. WALLET_LOCATION=(SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=D:\app\luoping\product\11.2.0\client_1\pstore))) 
  11. SQLNET.WALLET_OVERRIDE=TRUE 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.

     3,增加需要登陆的网络服务名,用户,密码到wallet中

 
  1. D:\app\luoping\product\11.2.0\client_1\BIN>mkstore -wrl D:\app\luoping\product\1 
  2. 1.2.0\client_1\pstore -createCredential htzdg sys oracle 
  3. Oracle Secret Store Tool: 版本 11.2.0.1.0 - Production 
  4. 版权所有 (c) 2004, 2009, Oracle 和/或其子公司。保留所有权利。 
  5. 输入 Wallet 口令: 
  6. Create credential oracle.security.client.connect_string1 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.

     4,测试是否成功

 
  1. D:\app\luoping\product\11.2.0\client_1\BIN>sqlplus /@htzdg as sysdba 
  2. SQL*Plus: Release 11.2.0.1.0 Production on 星期三 8月 29 17:48:27 2012 
  3. Copyright (c) 1982, 2010, Oracle.  All rights reserved. 
  4. 连接到: 
  5. Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production 
  6. With the Partitioning, OLAP, Data Mining and Real Application Testing options 
  7. SQL> 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.

    5,查看wallet中配置的网络服务名

 
  1. D:\app\luoping\product\11.2.0\client_1\BIN>mkstore -wrl d:\app\luoping\product\1 
  2. 1.2.0\client_1\pstore -listCredential 
  3. Oracle Secret Store Tool: 版本 11.2.0.1.0 - Production 
  4. 版权所有 (c) 2004, 2009, Oracle 和/或其子公司。保留所有权利。 
  5. 输入 Wallet 口令: 
  6. List credential (index: connect_string username) 
  7. 1: htzdg sys 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.

    6,一个网络服务名,只能对应一个用户,如果相同的数据库有多少用户需要在同一个client通过wallet实现时,我们需要每一个用户,创建一个网络服务名。

    下面是测试一个网络服务名,相增加两个用户时,报错。

 
  1. C:\Users\luoping>mkstore -wrl D:\app\luoping\product\11.2.0\client_1\pstore -cre 
  2. ateCredential htzdg scott oracle 
  3. Oracle Secret Store Tool: 版本 11.2.0.1.0 - Production 
  4. 版权所有 (c) 2004, 2009, Oracle 和/或其子公司。保留所有权利。 
  5. 输入 Wallet 口令: 
  6. Create credential 出现密钥存储错误: oracle.security.pki.OracleSecretStoreExcepti 
  7. on: Credential already exists 

     7,当密码修改后,要手动更新wallet中相应的密码。不然要报错的。

 
  1. D:\app\luoping\product\11.2.0\client_1\BIN>sqlplus /@htzdg as sysdba 
  2. SQL*Plus: Release 11.2.0.1.0 Production on 星期三 8月 29 17:45:56 2012 
  3. Copyright (c) 1982, 2010, Oracle.  All rights reserved. 
  4. 连接到: 
  5. Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production 
  6. With the Partitioning, OLAP, Data Mining and Real Application Testing options 
  7. SQL> 
  8. SQL> alter user sys identified by htz; 
  9. 用户已更改。 
  10. SQL> exit 
  11. 从 Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production 
  12. With the Partitioning, OLAP, Data Mining and Real Application Testing options 断 
  13. 开 
  14. D:\app\luoping\product\11.2.0\client_1\BIN>sqlplus /@htzdg as sysdba 
  15. SQL*Plus: Release 11.2.0.1.0 Production on 星期三 8月 29 17:46:25 2012 
  16. Copyright (c) 1982, 2010, Oracle.  All rights reserved. 
  17. ERROR: 
  18. ORA-01017: invalid username/password; logon denied 
  19. 请输入用户名: 
  20. D:\app\luoping\product\11.2.0\client_1\BIN>mkstore -wrl D:\app\luoping\product\1 
  21. 1.2.0\client_1\pstore -modifyCredential htzdg sys 
  22. Oracle Secret Store Tool: 版本 11.2.0.1.0 - Production 
  23. 版权所有 (c) 2004, 2009, Oracle 和/或其子公司。保留所有权利。 
  24. 命令行中缺少您的密钥/口令 
  25. 请输入您的密钥/口令: 
  26. 请重新输入您的密钥/口令: 
  27. 输入 Wallet 口令: 
  28. Modify credential 
  29. Modify 1 
  30. D:\app\luoping\product\11.2.0\client_1\BIN> 
  31. D:\app\luoping\product\11.2.0\client_1\BIN>mkstore -wrl D:\app\luoping\product\1 
  32. 1.2.0\client_1\pstore -modifyCredential htzdg sys 
  33. Oracle Secret Store Tool: 版本 11.2.0.1.0 - Production 
  34. 版权所有 (c) 2004, 2009, Oracle 和/或其子公司。保留所有权利。 
  35. 命令行中缺少您的密钥/口令 
  36. 请输入您的密钥/口令: 
  37. 请重新输入您的密钥/口令: 
  38. 输入 Wallet 口令: 
  39. Modify credential 
  40. Modify 1 
  41. D:\app\luoping\product\11.2.0\client_1\BIN> 
  42. D:\app\luoping\product\11.2.0\client_1\BIN>sqlplus /@htzdg as sysdba 
  43. SQL*Plus: Release 11.2.0.1.0 Production on 星期三 8月 29 17:48:27 2012 
  44. Copyright (c) 1982, 2010, Oracle.  All rights reserved. 
  45. 连接到: 
  46. Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production 
  47. With the Partitioning, OLAP, Data Mining and Real Application Testing options 
  48. SQL> 

     8,手动删除wallet中的记录

 
  1. D:\app\luoping\product\11.2.0\client_1\BIN>mkstore -wrl d:\app\luoping\product\1 
  2. 1.2.0\client_1\pstore -deleteCredential htzdg 
  3. Oracle Secret Store Tool: 版本 11.2.0.1.0 - Production 
  4. 版权所有 (c) 2004, 2009, Oracle 和/或其子公司。保留所有权利。 
  5. 输入 Wallet 口令: 
  6. Delete credential 
  7. Delete 1 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.

     9,mkstore命令帮忙手册

 
  1. D:\app\luoping\product\11.2.0\client_1\BIN>mkstore 
  2. Oracle Secret Store Tool: 版本 11.2.0.1.0 - Production 
  3. 版权所有 (c) 2004, 2009, Oracle 和/或其子公司。保留所有权利。 
  4. mkstore [-wrl wrl] [-create] [-createSSO] [-createLSSO] [-createALO] [-delete] [ 
  5. -deleteSSO] [-list] [-createEntry alias secret] [-viewEntry alias] [-modifyEntry 
  6.  alias secret] [-deleteEntry alias] [-createCredential connect_string username p 
  7. assword] [-listCredential] [-modifyCredential connect_string username password] 
  8. [-deleteCredential connect_string] [-help] [-nologo] 

----------------------------------权限相关 linux  777 windows 需要修改lck文件的owner

ORACLE wallet配置/管理/使用

 推荐 原创

73436962012-09-12 21:40:19博主文章分类:ORACLE 基础©著作权

文章标签ORACLE WALLET文章分类数据库阅读数4803

    昨天在公司配置数据库时,向wallet中增加了一个新的数据库,现实无需输入用户名与密码来登陆数据库,增加完成后,导致整个监控系统都是报用户名与密码的错误,无法登陆来数据库。但是ORACLE用户是能正常登陆数据库,不需要输入密码。其实原因很简单,因为我们的监控系统是nagios,而wallet相关的文件的默认权限是600,除ORACLE外其它的用户都是不可以读写的,正常情况下我们是改成了777的权限,让其它的用户也能使用钱包这个功能,当是我对wallet进行新增加一个数据库时,wallet会自己把cwallet.sso与ewallet.p12文件的权限自己改成600。这就导致了今天我的悲剧。

    下面是wallet的配置/管理/维护/现象的模拟

1.创建wallet

 
  1. [oracle@test db_1]$ mkdir wallet 
  2. [oracle@test db_1]$ pwd 
  3. /u01/app/oracle/product/11.2.0/db_1 
  4. [oracle@test db_1]$ mkstore -wrl /u01/app/oracle/product/11.2.0/db_1/wallet -create 
  5. Oracle Secret Store Tool : Version 11.2.0.2.0 - Production 
  6. Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved. 
  7. #这里输入wallet的密码,对密码是有限制条件的 
  8. 1.密码长度要是8位以上。 
  9. 2.密码最大长度没有限制。 
  10. 3.密码要有字符与数据。 
  11. Enter password:              
  12. Enter password again:              
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.

2.配置wallet到sqlnet.ora中

 
  1. [oracle@test db_1]$ cat $ORACLE_HOME/network/admin/sqlnet.ora 
  2. NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT) 
  3. #DIRECTORY这里就是指定wallet所在的目录
  4. WALLET_LOCATION=(SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=/u01/app/oracle/product/11.2.0/db_1/wallet))) 
  5. SQLNET.WALLET_OVERRIDE=TRUE 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.

3.查看wallet的命令帮忙

wallet这个很好,因为直接用help就可以看到命令的帮忙了,不需要我们再去记复杂的参数,只用记住mkstore这个命令来管理wallet就可以了。

 
  1. [oracle@test db_1]$ mkstore -help 
  2. Oracle Secret Store Tool : Version 11.2.0.2.0 - Production 
  3. Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved. 
  4. mkstore [-wrl wrl] [-create] [-createSSO] [-createLSSO] [-createALO] [-delete] 
  5. [-deleteSSO] [-list] [-createEntry alias secret] [-viewEntry alias] 
  6. [-modifyEntry alias secret] [-deleteEntry alias] 
  7. [-createCredential connect_string username password] [-listCredential] 
  8. [-modifyCredential connect_string username password] [-deleteCredential connect_string] [-help] [-nologo] 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.

4.增加数据库到wallet中去,并测试是否成功

 
  1. 3.1#增加net service为htz scott为用户 oracle为用户的密码。 
  2. #建议密码用''引起来,因为在生产环境中的密码基本上都是特殊字符的。 
  3. [oracle@test db_1]$ mkstore -wrl  /u01/app/oracle/product/11.2.0/db_1/wallet -createCredential htz scott 'oracle' 
  4. Oracle Secret Store Tool : Version 11.2.0.2.0 - Production 
  5. Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved. 
  6. Enter wallet password:              
  7. Create credential oracle.security.client.connect_string1 
  8. 3.2 #查看是否增加成功。 
  9. [oracle@test db_1]$ mkstore -wrl  /u01/app/oracle/product/11.2.0/db_1/wallet -listCredential  
  10. Oracle Secret Store Tool : Version 11.2.0.2.0 - Production 
  11. Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved. 
  12. Enter wallet password:              
  13. List credential (index: connect_string username) 
  14. 1: htz scott 
  15. 3.3 测试是否可以实现无需要输入用户与密码登陆 
  16. [oracle@test db_1]$ sqlplus /@htz 
  17. SQL*Plus: Release 11.2.0.2.0 Production on Sat Sep 8 09:19:15 2012 
  18. Copyright (c) 1982, 2010, Oracle.  All rights reserved. 
  19. Connected to: 
  20. Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production 
  21. With the Partitioning, OLAP, Data Mining and Real Application Testing options 
  22. #显示的是scott,成功了。 
  23. SQL> show user; 
  24. USER is "SCOTT" 
  25. SQL> exit 
  26. Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production 
  27. With the Partitioning, OLAP, Data Mining and Real Application Testing options 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.

5.查看entry

 
  1. #这里看到我们增加一个数据进来就会增加3个entries。 
  2. #分别是一个连接符,一个用户名,一个密码。 
  3. #当我们增加了很多数据库与用户进来后,数据库与用户还有密码他们是怎么关联的呢?其实他们就是通过后面的这个数字来关键的。 
  4. [oracle@test db_1]$ mkstore -wrl  /u01/app/oracle/product/11.2.0/db_1/wallet -list 
  5. Oracle Secret Store Tool : Version 11.2.0.2.0 - Production 
  6. Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved. 
  7. Enter wallet password:              
  8. Oracle Secret Store entries:  
  9. oracle.security.client.connect_string1 
  10. oracle.security.client.password1 
  11. oracle.security.client.username1 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.

6.创建默认用户与密码

这样可以实现,登陆所以的数据库都可以使用默认的用户与密码

 
  1. 6.1 #创建默认的用户。 
  2. [oracle@test db_1]$ mkstore -wrl  /u01/app/oracle/product/11.2.0/db_1/wallet -createEntry  oracle.security.client.default_username scott 
  3. Oracle Secret Store Tool : Version 11.2.0.2.0 - Production 
  4. Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved. 
  5. Enter wallet password:              
  6. 6.2 #创建默认用户的密码。 
  7. [oracle@test db_1]$ mkstore -wrl  /u01/app/oracle/product/11.2.0/db_1/wallet -createEntry  oracle.security.client.default_password oracle 
  8. Oracle Secret Store Tool : Version 11.2.0.2.0 - Production 
  9. Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved. 
  10. Enter wallet password:              
  11. 6.3 #查看是否创建成功 
  12. [oracle@test db_1]$ mkstore -wrl  /u01/app/oracle/product/11.2.0/db_1/wallet -list 
  13. Oracle Secret Store Tool : Version 11.2.0.2.0 - Production 
  14. Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved. 
  15. Enter wallet password:              
  16. Oracle Secret Store entries:  
  17. oracle.security.client.connect_string1 
  18. oracle.security.client.default_password 
  19. oracle.security.client.default_username 
  20. oracle.security.client.password1 
  21. oracle.security.client.username1 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.

7.当默认用户与手动增加的数据库信息到wallet中时,那一个生效呢?

下面我们测试一下,当wallet里面创建了默认的用户与密码时,手动再增加一个增加的信息到wallet时,到底是默认用户还是手动增加的生效呢?其实是手动增加的生效。

 
  1. 7.1 #由于默认用户增加的SCOTT普通用户,所以这里我们增加sys这个用户来做测试,net service名是htzb 
  2. [oracle@test db_1]$ mkstore -wrl $ORACLE_HOME/wallet -createCredential htzb sys 'oracle' 
  3. Oracle Secret Store Tool : Version 11.2.0.2.0 - Production 
  4. Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved. 
  5. Enter wallet password:              
  6. Create credential oracle.security.client.connect_string1 
  7. 7.2 #登陆测试。 
  8. 这里没有增加as sysdba就是为了能区别普通用户与sys用户登陆的区别。如果是sys用户生效,就会报没有增加as sysdba登陆,如果是scott这个默认用户生效,就会登陆成功。 
  9. [oracle@test db_1]$ sqlplus /@htzb 
  10. SQL*Plus: Release 11.2.0.2.0 Production on Sat Sep 8 09:33:07 2012 
  11. Copyright (c) 1982, 2010, Oracle.  All rights reserved. 
  12. #这里报错,说明手动增加的SYS用户的生效。默认用户没有生效 
  13. ERROR: 
  14. ORA-28009: connection as SYS should be as SYSDBA or SYSOPER 
  15. Enter user-name:   
  16. 7.3 #这里我们再登陆htz,登陆成功。说明我们默认用户在其它的net service是生效的。 
  17. [oracle@test db_1]$ sqlplus /@htz 
  18. SQL*Plus: Release 11.2.0.2.0 Production on Sat Sep 8 09:33:23 2012 
  19. Copyright (c) 1982, 2010, Oracle.  All rights reserved. 
  20. Connected to: 
  21. Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production 
  22. With the Partitioning, OLAP, Data Mining and Real Application Testing options 
  23. SQL> exit 
  24. Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production 
  25. With the Partitioning, OLAP, Data Mining and Real Application Testing options 
  26. 7.4 #以sys as sysdba登陆成功 
  27. [oracle@test db_1]$ sqlplus /@htzb as sysdba 
  28. SQL*Plus: Release 11.2.0.2.0 Production on Sat Sep 8 09:33:30 2012 
  29. Copyright (c) 1982, 2010, Oracle.  All rights reserved. 
  30. Connected to: 
  31. Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production 
  32. With the Partitioning, OLAP, Data Mining and Real Application Testing options 
  33. SQL> show user 
  34. USER is "SYS" 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.

8.下面测试的是通过mkstore修改wallet中的内容后,导致wallet相关的文件,权限自动改成600.

 
  1. 8.1 #把wallet的文件权限改成777 
  2. [oracle@test db_1]$ chmod 777 $ORACLE_HOME/wallet/* 
  3. [oracle@test db_1]$ ls -l $ORACLE_HOME/wallet 
  4. total 16 
  5. -rwxrwxrwx 1 oracle oinstall 4565 Sep  8 09:38 cwallet.sso 
  6. -rwxrwxrwx 1 oracle oinstall 4488 Sep  8 09:38 ewallet.p12 
  7. 8.2 #手动在wallet中增加一个net service的配置信息 
  8. [oracle@test db_1]$ mkstore -wrl $ORACLE_HOME/wallet -deleteCredential htz  
  9. Oracle Secret Store Tool : Version 11.2.0.2.0 - Production 
  10. Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved. 
  11. Enter wallet password:              
  12. Delete credential  
  13. Delete 2 
  14. 8.3 #再次查看权限时发现权限已经自己改成了600了 
  15. [oracle@test db_1]$ ls -l $ORACLE_HOME/wallet 
  16. total 16 
  17. -rw------- 1 oracle oinstall 4205 Sep  8 09:39 cwallet.sso 
  18. -rw------- 1 oracle oinstall 4128 Sep  8 09:39 ewallet.p12 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.

9. 当用户的密码发生变化的时候需要修改wallet中的密码

 
  1. [oracle@test ~]$ mkstore -wrl $ORACLE_HOME/wallet -modifyCredential htz scott 'oracleoracle'; 
  2. Oracle Secret Store Tool : Version 11.2.0.2.0 - Production 
  3. Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved. 
  4. Enter wallet password:              
  5. Modify credential  
  6. Modify 1 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.

10.查看wallet中有那些认证的信息

 
  1. [oracle@test ~]$ mkstore -wrl $ORACLE_HOME/wallet -listCredential  
  2. Oracle Secret Store Tool : Version 11.2.0.2.0 - Production 
  3. Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved. 
  4. Enter wallet password:              
  5. List credential (index: connect_string username) 
  6. 1: htz scott 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.

11 从wallet删除一个net service的配置信息

 
  1. [oracle@test ~]$ mkstore -wrl $ORACLE_HOME/wallet -deleteCredential  htz 
  2. Oracle Secret Store Tool : Version 11.2.0.2.0 - Production 
  3. Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved. 
  4. Enter wallet password:              
  5. Delete credential  
  6. Delete 1 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.

12.修改默认的用户名

修改默认的用户名的密码的方法也一样。

 
  1. [oracle@test ~]$ mkstore -wrl $ORACLE_HOME/wallet -viewEntry oracle.security.client.default_username 
  2. Oracle Secret Store Tool : Version 11.2.0.2.0 - Production 
  3. Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved. 
  4. Enter wallet password:              
  5. oracle.security.client.default_username = scott 
  6. [oracle@test ~]$ mkstore -wrl $ORACLE_HOME/wallet -modifyEntry oracle.security.client.default_username 
  7. Oracle Secret Store Tool : Version 11.2.0.2.0 - Production 
  8. Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved. 
  9. Your secret/Password is missing in the command line  
  10. Enter your secret/Password:          
  11. Re-enter your secret/Password:          
  12. Enter wallet password:              
  13. [oracle@test ~]$ mkstore -wrl $ORACLE_HOME/wallet -viewEntry oracle.security.client.default_username 
  14. Oracle Secret Store Tool : Version 11.2.0.2.0 - Production 
  15. Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved. 
  16. Enter wallet password:              
  17. oracle.security.client.default_username = oracle 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.

13 删除默认的用户名

登录后复制 

 
  1. [oracle@test ~]$ mkstore -wrl $ORACLE_HOME/wallet -deleteEntry oracle.security.client.default_username 
  2. Oracle Secret Store Tool : Version 11.2.0.2.0 - Production 
  3. Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved. 
  4. Enter wallet password:   
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.

我们一般的维护就这么多。

--------linux 界面操作

 

--创建钱包,或者alter system set encryption key identified by "oracle"; 

 

orapki wallet change_pwd -wallet /home/sysrls/wallet/

 

#维护小脚本,应该用dos2unix转换或者在linux中手工编辑

#!/bin/bash

echo -e "Useful action\n"

echo -e "1)create wallet"

echo -e "2)create Credential"

echo -e "3)check the created Credential"

echo -e "4)modify the created Credential"

echo -e "5)delete the created Credential"

echo -e "6)list Credential item"

echo -e "7)list Credential Entry value "

echo -e "8)modify wallet password"

echo -e "9)exit"

read -p "choose your action:" num1

case $num1 in

1)

echo -e "Please enter wallet password:\n"

read -s password

printf "$password\n$password\n" | /u01/app/oracle/product/11.2/db_1/bin/mkstore -wrl /u01/app/oracle/product/11.2/db_1/wallet/ -create

echo -e "wallet create success\n"

;;

2)

echo -e "Please enter wallet password:"

read -s password

read -p "Please enter database tnsname:" tnsname

read -p "Please enter database user:" user

echo -n "Please enter database user's password:"

read -s dbpass

printf "$dbpass\n$dbpass\n$password\n" | /u01/app/oracle/product/11.2/db_1/bin/mkstore -wrl /u01/app/oracle/product/11.2/db_1/wallet/ -createCredential $tnsname $user

echo -e "Credential create success\n"

;;

3)

echo -e "Please enter wallet password:\n"

read -s password

printf "$password\n" | /u01/app/oracle/product/11.2/db_1/bin/mkstore -wrl /u01/app/oracle/product/11.2/db_1/wallet/ -listCredential

;;

4)

echo -e "Please enter wallet password:"

read -s password

read -p "Please enter database tnsname:" tnsname

read -p "Please enter database user:" user

echo -n "Please enter database user's password:"

read -s dbpass

printf "$dbpass\n$dbpass\n$password\n" | /u01/app/oracle/product/11.2/db_1/bin/mkstore -wrl /u01/app/oracle/product/11.2/db_1/wallet/ -modifyCredential $tnsname $user

echo -e "modify Credential success\n"

;;

5)

echo -e "Please enter wallet password:"

read -s password

read -p "Please enter database tnsname:" tnsname

printf "$password\n" | /u01/app/oracle/product/11.2/db_1/bin/mkstore -wrl /u01/app/oracle/product/11.2/db_1/wallet/ -deleteCredential $tnsname

echo -e "delete Credential success\n"

;;

6)

echo -e "Please enter wallet password:"

read -s password

printf "$password\n" | /u01/app/oracle/product/11.2/db_1/bin/mkstore -wrl /u01/app/oracle/product/11.2/db_1/wallet/ -list

;;

7)

echo -e "Please enter wallet password:"

read -s password

read -p "Please enter Entryname type:" type

if [ "$type" == "connect" ];then

printf "$password\n" | /u01/app/oracle/product/11.2/db_1/bin/mkstore -wrl /u01/app/oracle/product/11.2/db_1/wallet/ -viewEntry oracle.security.client.connect_string1

fi

if [ "$type" == "user" ];then

printf "$password\n" | /u01/app/oracle/product/11.2/db_1/bin/mkstore -wrl /u01/app/oracle/product/11.2/db_1/wallet/ -viewEntry oracle.security.client.username1

fi

if [ "$type" == "password" ];then

printf "$password\n" | /u01/app/oracle/product/11.2/db_1/bin/mkstore -wrl /u01/app/oracle/product/11.2/db_1/wallet/ -viewEntry oracle.security.client.password1

fi

;;

8)

/u01/app/oracle/product/11.2/db_1/bin/orapki wallet change_pwd -wallet /u01/app/oracle/product/11.2/db_1/wallet/

;;

9)

exit 0

esac

 

12.修改默认的用户名

修改默认的用户名的密码的方法也一样。

[oracle@test ~]$ mkstore -wrl $ORACLE_HOME/wallet -viewEntry oracle.security.client.default_username

--oracle.security.client.default_username = scott

mkstore -wrl $ORACLE_HOME/wallet -modifyEntry oracle.security.client.default_username

mkstore -wrl $ORACLE_HOME/wallet -viewEntry oracle.security.client.default_username

--oracle.security.client.default_username = oracle

13 删除默认的用户名

[oracle@test ~]$ mkstore -wrl $ORACLE_HOME/wallet -deleteEntry oracle.security.client.default_username

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/83322.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【非欧几里得域信号的信号处理】使用经典信号处理和图信号处理在一维和二维欧几里得域信号上应用低通滤波器研究(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

java日期常用操作

Testpublic void validateDateUtils(){// 1 字符串转换日期Date result DateUtil.parse("2023-08-01", com.alibaba.excel.util.DateUtils.DATE_FORMAT_10);log.info("result : [{}]" , result);// 2 日期转换字符串final Date date new Date();String f…

ELK中grok插件、mutate插件、multiline插件、date插件的相关配置

目录 一、grok 正则捕获插件 自定义表达式调用 二、mutate 数据修改插件 示例&#xff1a; ●将字段old_field重命名为new_field ●添加字段 ●将字段删除 ●将filedName1字段数据类型转换成string类型&#xff0c;filedName2字段数据类型转换成float类型 ●将filedNam…

面试热题(路径总和II)

给你二叉树的根节点 root 和一个整数目标和 targetSum &#xff0c;找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径。 叶子节点 是指没有子节点的节点。 在这里给大家提供两种方法进行思考&#xff0c;第一种方法是递归&#xff0c;第二种方式使用回溯的方式进行爆…

博客网站添加复制转载提醒弹窗Html代码

网站如果是完全禁止右键&#xff08;复制、另存为等&#xff09;操作&#xff0c;对用户来说体验感会降低&#xff0c;但是又不希望自己的原创内容直接被copy&#xff0c;今天飞飞和你们分享几行复制转载提醒弹窗Html代码。 效果展示&#xff1a; 复制以下代码&#xff0c;将其…

Linux--core dump打开的情况下,运行下面的代码,会发生什么?

代码&#xff1a; #include <iostream> #include <signal.h> #include <unistd.h>using namespace std;void catchSig(int signum) {cout<< "进程捕捉到了一个信号&#xff0c;正在处理中&#xff1a; "<< signum << " p…

开发工具Eclipse的使用之导入项目(import)

&#x1f973;&#x1f973;Welcome Huihuis Code World ! !&#x1f973;&#x1f973; 接下来看看由辉辉所写的关于Eclipse使用的相关操作吧 一.导读 上篇我们已经详细介绍了开发工具eclipse&#xff0c;也说明了eclipse的基本使用&#xff0c;那么我们这篇来详细讲述一下怎…

docker基本使用方法

docker使用 1. Docker 介绍 Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中&#xff0c;然后发布到任何流行的 Linux 机器上&#xff0c;也可以实现虚拟化。Docker 使您能够将应用程序与基础架构分开&#xff0c;从而可以快速交付软件。通过利用 …

springcloud3 bus+springconfig 实现配置文件的动态刷新(了解)

一 springcloud Bus的作用 1.1 springcloud的作用 spring cloud bus是用来将分布式系统的节点与轻量级消息系统链接起来的框架。 它整合了java的事件处理机制和消息中间件的功能。其中目前支持RabbitMQ和kafka 简介&#xff1a; bus实现多个服务的配置文件动态刷新。 1.2 …

DC电源模块在工业控制器中的重要性

BOSHIDA DC电源模块在工业控制器中的重要性 DC电源模块在工业控制器中起着非常重要的作用&#xff0c;它是实现工业控制器运转所必需的组成部分。 DC电源模块主要用于将交流电转换成直流电供给工业控制器中的各个部件&#xff0c;包括控制器内部的微处理器、传感器、执行器等等…

【SpringCloud】RabbitMQ基础

1.初识MQ 1.1.同步和异步通讯 微服务间通讯有同步和异步两种方式&#xff1a; 同步通讯&#xff1a;就像打电话&#xff0c;需要实时响应。 异步通讯&#xff1a;就像发邮件&#xff0c;不需要马上回复。 两种方式各有优劣&#xff0c;打电话可以立即得到响应&#xff0c;…

如何系列 如何使用Resilience4j提高应用弹性和容错

文章目录 背景简介Maven重试器注解式编程式配置事件监听指标监控健康检查 速率限制注解式编程式配置事件监听指标监控动态修改配置 断路器注解式配置 舱壁注解式 时间限制器多组件配合使用最佳实践 配置参考&#xff1a; 背景 在应用程序开发的过程中&#xff0c;特别是在构建…

机器学习基础

什么是机器学习&#xff1f;----本质就是寻找一个函数。 可以训练什么样的函数呢&#xff1f; 可以训练一个回归的函数&#xff0c;也可以训练一个分类的函数。 这个例子的需要分类的类别是19*19的选项。 在机器学习领域里面不止回归和分类。 举例&#xff1a;预测函数 利用已…

Llama 2 with langchain项目详解(一)

Llama 2 with langchain项目详解(一) 2023年2月25日,美国Meta公司发布了Llama 1开源大模型。随后,于2023年7月18日,Meta公司发布了Llama 2开源大模型,该系列包括了70亿、130亿和700亿等不同参数规模的模型。相较于Llama 1,Llama 2的训练数据增加了40%,上下文长度提升至…

Oracle数据迁移

问题描述&#xff1a; oracle数据库的所有表结构、数据、索引等需要需从测试库迁移到正式库。 解决步骤&#xff1a; oracle数据库迁移&#xff0c;主要通过expdp从测试库所在的源服务器将指定的数据表或数据源导出为一个或多个数据文件&#xff08;.dmp文件&#xff09;&…

MySql用户管理、权限管理

用户管理 1. 查看系统用户&#xff08;查询mysql系统数据库中的user表&#xff09; select * from mysql.user; 2. 创建用户 CREATE USER 用户名主机名 identified by 密码 -- 创建用户zhonghua,只能在当前主句localhost访问,密码为123456 create user zhonghualocalhost i…

Fabric系列 - 知识点整理

知识点 源码编译 主机编译 容器编译 手动部署(docker-compose) 单peer 多peer 中途加peer 多主机多peer 链码 语法, 接口 (go版) 命令行调用 ca server 在DApp中使用SDK调用 (js版) 部署的几个阶段 部署1排序和1节点, 1组织1通道 光部署能Dapp 带ca server (每个组织一个)…

使用IIS服务器部署Flask python Web项目

参考文章 ""D:\Program Files (x86)\Python310\python310.exe"|"D:\Program Files (x86)\Python310\lib\site-packages\wfastcgi.py"" can now be used as a FastCGI script processor参考文章 请求路径填写*&#xff0c;模块选择FastCgiModule&…

Android使用kotlin+协程+room数据库的简单应用

前言&#xff1a;一般主线程&#xff08;UI线程&#xff09;中是不能执行创建数据这些操作的&#xff0c;因为等待时间长。所以协程就是为了解决这个问题出现。 第一步&#xff1a;在模块级的build.gradle中引入 id com.android.application// roomid kotlin-androidid kotlin…

kafka-2.12使用记录

kafka-2.12使用记录 安装kafka 2.12版本 下载安装包 根据你的系统下载rpm /deb /zip包等等, 这里我使用的是rpm包 安装命令 rpm -ivh kafka-2.12-1.nfs.x86_64.rpm启动内置Zookeeper 以下命令要写在同一行上 /opt/kafka-2.12/bin/zookeeper-server-start.sh /opt/kafka-2…