Oracleウォレットの実践と共通アクション

財布の役割

それができない場合があり、操作するユーザーのパスワードデータベースで使用するシェルスクリプトに非常に有用であるデータベース(非オペレーティング・システム認証)を、ログインするためのパスワードなしで、任意のユーザーのOracleのウォレット範囲を使用することにより、Oracleの10g R2の開始あなたが直接データベースに接続することができ、「SQLPLUS / @ CONNECT_STRING」道を通して、その後のmkstoreコマンドによって、そのようなOracleクライアントでの認証情報としてウォレットの設定をユーザーのパスワードを公開し、そして。

sysrlsユーザーがシステムにログインするためのパスワードを使用する必要はありませんため、この例では、として使用するのmkstoreは次のとおりです。

$ $ ORACLE_HOME / binに/のmkstore

mkstore [-wrl WRL] [-create] [-createSSO] [-delete] [-deleteSSO] [-list] [-createEntryエイリアス秘密] [-viewEntryエイリアス] [-modifyEntry別名秘密] [-deleteEntryエイリアス] [ - 助けて]

1)Oracle Clientをインストールします

2)財布格納ディレクトリを作成して、.bash_profileを変更し
ます。mkdir /ホーム/ sysrls /財布
のvi .bash_profileのを
ORACLE_BASE=/opt/oraapp<br/>ORACLE_HOME=/opt/oraapp/client/12.1.0.2_x64_DBAocl030<br/>TNS_ADMIN=$ORACLE_HOME/network/admin/<br/>PATH=$ORACLE_HOME/bin:$PATH<br/>LD_LIBRARY_PATH=${ORACLE_HOME}/lib:${LD_LIBRARY_PATH}<br/>LANG="en_US.UTF-8"<br/>NLS_LANG="AMERICAN_AMERICA.AL32UTF8"<br/>ORA_NLS10=$ORACLE_HOME/nls/data<br/>export ORACLE_BASE LANG ORACLE_HOME PATH LD_LIBRARY_PATH NLS_LANG ORA_NLS10 TNS_ADMIN

3)生成財布
の$の$ ORACLE_HOME / binに/のmkstore -wrl /ホーム/ sysrls /財布-create

パスワードを入力します。<ウォレット・パスワードを入力します>

もう一度パスワードを入力します。<ウォレット・パスワードの確認>

[sysrls @ cnl20059850財布] $ LLの
合計8
-rw -------。1 sysrls sysrls 581 7月18日11時01分のcwallet.sso
-rw-RW-rw-。1 sysrls sysrls 0 7月18日10時52 cwallet.sso.lckの
-rw -------。1 sysrls sysrls 536 7月18日11:01 ewallet.p12と
-rw-RW-rw-。1 sysrls sysrls 0 7月18日10時52 ewallet.p12.lck

4)ネットワーク構成変更
のviの$ ORACLE_HOME / network / admin / tnsnames.oraファイルを

CRCDB =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS =(PROTOCOL = TCP)(HOST = 133.9.207.35)(PORT = 2001))

(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = CRCDB) )

$ viの$ ORACLE_HOME / network / adminに/ sqlnet.oraファイル

WALLET_LOCATION =(SOURCE =(METHOD = FILE)(METHOD_DATA =(DIRECTORY = /ホーム/ sysrls /財布)))

SQLNET.WALLET_OVERRIDE = TRUE

5)特定のデータベース・ユーザーに資格を生成
$ ORACLE_HOME / binに/のmkstore -wrl /ホーム/ u_test /財布-createCredential CRCDBウォレットtest123を

5)ユーザ認証情報がウォレットに追加されたことを確認

$ $ ORACLE_HOME / binに/のmkstore -wrl $ ORACLE_HOME / network / adminに/財布-listCredential

6)どのようにあなたのマシンを生成するための唯一の財布作ることができ
たOracle Walletは、認証格納容器であり、および署名の資格情報を。

財布は、セキュリティ資格情報を使用する場合、信頼できる証明書は、Oracle Walletに格納されます。

PeopleSoftのは、2つの方法でのOracleウォレットを作成することができます:

orapkiのコマンドライン - orapkiのツールは、Oracleデータベースで使用可能なので、このツールはユーザーのみが使用することができ、Oracleデータベースのライセンスを持っています。

OpenSSLのユーティリティ - Oracleデータベースのライセンスを持っていないユーザーが独自の証明書を作成するには、このユーティリティを使用することができます。

Oracleのウォレットを作成したら、セキュアなクライアントとサーバーの通信を確保するために、ワークステーション・リスナとのJoltリスナーポートのSSLを設定する必要があります。

7)维护
生成り財布
のmkstoreの-wrl /ホーム/ sysrls /財布/ -createCredential CRCDB財布フランク
Oracleの秘密の場所ツール:バージョン12.1.0.2
著作権(C)2004、2014、Oracleおよび/またはその関連会社。全著作権所有。

ウォレット・パスワードを入力します。
資格oracle.security.client.connect_string1を作成します。

查看財布中的认证信息
[sysrls @財布cnl20059850] $のmkstore -wrl /ホーム/ sysrls /財布-listCredential
Oracleの秘密の場所ツール:バージョン12.1.0.2
著作権(C)2004、2014、Oracleおよび/またはその関連会社。全著作権所有。

ウォレット・パスワードを入力します。
リスト資格(インデックス:CONNECT_STRING名)
1:CRCDB財布
[sysrls @ cnl20059850財布] $

修改財布中的认证信息
TEST2 [sysrls @財布cnl20059850] $のmkstore -wrl /ホーム/ sysrls /財布/ -modifyCredential CRCDB財布
Oracleの秘密の場所ツール:バージョン12.1.0.2
著作権(C)2004、2014、Oracleおよび/またはその関連会社。全著作権所有。

ウォレット・パスワードを入力します。
資格変更
の変更1

中に財布の認証情報を削除
のmkstore -wrl /ホーム/ sysrls /財布 -deleteCredential CRCDB

查看財布中的条目
[sysrls @財布cnl20059850] $のmkstore -wrl /ホーム/ sysrls /財布/ -list
Oracleの秘密の場所ツール:バージョン12.1.0.2
著作権(C)2004、2014、Oracleおよび/またはその関連会社。全著作権所有。

ウォレット・パスワードを入力します:
Oracleの秘密の場所エントリ:
oracle.security.client.connect_string1
oracle.security.client.password1
oracle.security.client.username1

查看財布中条目的值
[sysrls @財布cnl20059850] $のmkstore -wrl /ホーム/ sysrls /財布/ -viewEntry oracle.security.client.connect_string1
Oracleの秘密の場所ツール:バージョン12.1.0.2
著作権(C)2004、2014、Oracleのおよび/またはその関連会社。全著作権所有。

ウォレット・パスワードを入力します。
oracle.security.client.connect_string1 = CRCDB
[sysrls @財布cnl20059850] $のmkstore -wrl /ホーム/ sysrls /財布/ -viewEntry oracle.security.client.username1
Oracleの秘密の場所ツール:バージョン12.1.0.2
著作権( C)2004、2014、Oracleおよび/またはその関連会社。全著作権所有。

ウォレット・パスワードを入力します。
oracle.security.client.username1 =財布

[sysrls @ cnl20059850財布] $のmkstore -wrl /ホーム/ sysrls /財布/ -viewEntry oracle.security.client.password1
Oracleの秘密の場所ツール:バージョン12.1.0.2
著作権(C)2004、2014、Oracleおよび/またはその関連会社。全著作権所有。

ウォレット・パスワードを入力します。
oracle.security.client.password1 = TEST2

財布パスワードファイルの変更
orapkiの財布がchange_pwd -wallet /ホーム/ sysrls /財布/

これは、小さなスクリプト形式のメンテナンスが付属しています

#!/ binに/ bashの

-e「有用なアクション\ n」はエコー
エコー-e「1)ウォレットを作成する」
エコー-e「2)資格を作成する」
エコー-e「3)作成した資格情報を確認し、」
エコー-e「4)作成した資格変更」
エコー-e「5)作成した資格情報を削除する」
エコー-e「6)リスト資格項目」
7「)リスト資格エントリ値」エコー-e
「8)ウォレット・パスワードを変更する」エコー-e
「9)出口」エコー-e
読み取りますNUM1:-p「あなたのアクションを選択」
で、ケースの$ NUM1を

    1)
    echo -e "Please enter wallet password:\n"
    read -s password
    printf "$password\n$password\n" | /opt/oraapp/client/12.1.0.2_x64_DBAocl030/bin/mkstore -wrl /home/sysrls/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" | /opt/oraapp/client/12.1.0.2_x64_DBAocl030/bin/mkstore -wrl /home/sysrls/wallet/ -createCredential $tnsname $user 
    echo -e "Credential create success\n"
    ;;
    3)
    echo -e "Please enter wallet password:\n"
    read -s password
    printf "$password\n" | /opt/oraapp/client/12.1.0.2_x64_DBAocl030/bin/mkstore -wrl /home/sysrls/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" | /opt/oraapp/client/12.1.0.2_x64_DBAocl030/bin/mkstore -wrl /home/sysrls/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" | /opt/oraapp/client/12.1.0.2_x64_DBAocl030/bin/mkstore -wrl /home/sysrls/wallet/ -deleteCredential $tnsname
    echo -e "delete Credential success\n"
    ;;
    6)
    echo -e "Please enter wallet password:"
    read -s password
    printf "$password\n" | /opt/oraapp/client/12.1.0.2_x64_DBAocl030/bin/mkstore -wrl /home/sysrls/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" | /opt/oraapp/client/12.1.0.2_x64_DBAocl030/bin/mkstore -wrl /home/sysrls/wallet/ -viewEntry oracle.security.client.connect_string1
    fi
    if [ "$type" == "user" ];then
    printf "$password\n" | /opt/oraapp/client/12.1.0.2_x64_DBAocl030/bin/mkstore -wrl /home/sysrls/wallet/ -viewEntry oracle.security.client.username1
    fi
    if [ "$type" == "password" ];then
    printf "$password\n" | /opt/oraapp/client/12.1.0.2_x64_DBAocl030/bin/mkstore -wrl /home/sysrls/wallet/ -viewEntry oracle.security.client.password1
    fi
    ;;
    8)
    /opt/oraapp/client/12.1.0.2_x64_DBAocl030/bin/orapki wallet change_pwd -wallet /home/sysrls/wallet/
    ;;
    9)
    exit 0

ESAC

おすすめ

転載: blog.51cto.com/12898349/2423039