ttUser
ttUserユーティリティは、パスワードの保護に利用できます。
ttUserユーティリティでは、次のいずれかを実行できます:
- Oracle Walletを使用して、ユーザーIDとパスワードを安全に格納します。
- パスワードをハッシュして、それにより得られた値をPWDCrypt接続属性に使用します。
Oracle Walletへの資格証明の格納
データベースへの接続時に資格証明を提供する最も安全な方法は、Oracle Walletにユーザーのパスワードを格納することです。
ttUserでは、次のウォレット関連のタスクを実行できます:
- パスワードに関連付けられたユーザーIDとキャッシュ管理ユーザーIDをユーザー管理のOracle Walletに追加します。
- ウォレットの配置先にするディレクトリ名を指定します。
- パスワードに関連付けられているユーザーIDとキャッシュ管理ユーザーIDをウォレットから削除します。
ttUserユーティリティは、次のようにウォレットを作成または変更します:
- TimesTenは、
ttUserによって作成されたサブディレクトリにウォレットを配置します。そのようなサブディレクトリを配置するパスを指定します。サブディレクトリが存在していない場合は、ttUserによって作成されます。このサブディレクトリは自分で作成しないでください。 - まだウォレットが存在していない場合、
ttUserは指定された場所にウォレットを作成します。資格証明は、このディレクトリの場所にあるOracle Walletに追加されます。 - ウォレットが存在していて、ウォレット内にユーザーが存在しない場合、
ttUserユーティリティはウォレットにユーザーとパスワードを追加します。 - ユーザーがすでにウォレットに追加されている場合は、新しいパスワードを指定すると既存のパスワードを上書きできます。
特定のDSNの同じウォレットに、パスワードが関連付けられた複数の異なるユーザーを格納できます。ただし、異なるDSNで同じユーザーのパスワードが異なる場合は、個別のウォレットを使用する必要があります。
- Terryは、ds1のウォレットを格納するためにディレクトリ
/terry/wallets/ds1walletを作成します。 - Terryは、ds2のウォレットを格納するためにディレクトリ
/terry/wallets/ds2walletを作成します。 ttUser -setPwdを使用して、Terryはウォレットを配置してパスワードを格納するディレクトリ構造ごとにパスを指定します。それぞれのウォレットを格納するサブディレクトリは、どちらの場合もttUserによって作成されます。
ttUserによるパスワードのハッシュ
-pwdCryptオプションを指定すると、ttUserユーティリティによってパスワードの入力を求められ、ハッシュ・パスワードが返されます。この出力は、接続文字列に組み込むか、ODBCINIファイルのPWDCrypt接続属性に対する値として組み込むことができます。
必要な権限
このプロシージャには、権限は必要ありません。
TimesTen ScaleoutおよびTimesTen Classicでの使用
このユーティリティは、TimesTen ClassicとTimesTen Scaleoutの両方でサポートされています。
構文
ttUser {-h | -help | -V}
ttUser -pwdCrypt
ttUser -setPwd -uid {UID} -wallet {walletPath}
-removePwd -uid {UID} -wallet {walletPath}
-setOraclePwd -uid {UID} -wallet {walletPath}
-removeOraclePwd -uid {UID} -wallet {walletPath}オプション
ttUserユーティリティは、次のオプションをサポートします:
| オプション | 説明 |
|---|---|
|
|
使用方法のメッセージを出力して終了します。 |
|
|
|
-removeOraclePwd |
ウォレットからOracleキャッシュ管理ユーザーとパスワードを削除します。 |
-removePwd |
ウォレットからTimesTenユーザーとパスワードを削除します。 |
-setOraclePwd |
ウォレットにOracleキャッシュ管理ユーザーとパスワードを設定します。 |
-setPwd |
ウォレットにTimesTenユーザーとパスワードを設定します。 |
-uid {username | cacheadmin} |
資格証明のユーザー名(すべてのウォレット・オプションに必須)。 |
|
|
|
|
|
作成または更新するウォレット・ファイルへの絶対パス。 |
ノート
- ウォレットの保護と管理に関する責任はユーザーにあります。
- パスワードを保存するときに、そのユーザーIDとパスワード・タイプのエントリがすでにウォレットに存在している場合、既存のパスワードは警告なしで上書きされます。
- ウォレットを作成し、TimesTenへのアクセスに使用するためにホストからアクセスできるようにする必要があります。
- TimesTenでは、TimesTen DSNとOracle NetServiceNameの組合せごとに1つのウォレットを使用するようにお薦めします。
例
この例では、TimesTenユーザーのパスワードを設定します。ttUserユーティリティにより、パスワードの入力を求められます。
% ttUser -setPwd -uid terry -wallet /home/terry/wallets/mywallet Enter password:
すべてのウォレットを格納するための/home/cacheadmin/walletsディレクトリが作成されていると、この例では、Oracleキャッシュ管理ユーザーのパスワードを設定します。
% ttUser -setOraclePwd -uid cacheadmin -wallet /home/cacheadmin/wallets Enter password:
Oracleパスワードを削除するには、ttUser -removeOraclePwdを使用します。
% ttUser -removeOraclePwd -uid cacheadmin -wallet /home/cacheadmin/wallets
この例では、Oracleキャッシュ管理ユーザーが、接続文字列またはDSN定義でPwdとOraclePwdを指定することなく、ttIsqlを通じてTimesTenとOracleに接続する方法を示します。かわりに、Oracleキャッシュ管理ユーザーは、資格証明の取得元のウォレットを指定するUIDとPwdWalletの値を指定します。「PwdWallet」を参照してください。
Command> connect “dsn=mydb;uid=cacheadmin;oracleNetServiceName=myorcl;PwdWallet=/home/terry/wallets/mywallet”;