ネイティブの TCP/IP を介した DRDA では、通信装置、モード、保護ロケーション属性、および APPC 通信と関連付けられた会話機密保護レベルといった、 OS/400 通信機密保護サービスおよび概念を使用しません。したがって、TCP/IP のための機密保護の設定は、それらとは全く異なるものとなります。
TCP/IP を介した DRDA の現在の DB2/400 インプリメンテーションでは、以下の 2 タイプの機密保護メカニズムがサポートされています。
DB2 ユニバーサル・データベース (AS/400 版) アプリケーション・サーバー (AS) の場合、省略時の機密保護はユーザー ID とパスワードです。つまり、システムをインストールしたら、インバウンド TCP/IP 接続要求には、サーバー・ジョブを実行するときのユーザー ID とパスワードが必要だということです。パスワードが必要でないことを指定するときには、 CHGDDMTCPA コマンドを使用することができます。このような変更を行うときには、CHGDDMTCPA PWDRQD(*NO) と入力してください。このコマンドを使用するには、*IOSYSCFG 特殊権限が必要です。
DB2 ユニバーサル・データベース (AS/400 版) アプリケーション・リクエスター (AR、またはクライアント) では、2 通りの方法によって、 TCP/IP 接続要求でユーザー ID とともにパスワードを送信することができます。どちらの方法も使用しない場合、ユーザー ID だけが送信されます。
パスワードを送信する最初の方法は、 SQL CONNECT ステートメントの USER/USING フォームを使用することです。次のような構文になります。
CONNECT TO rdbname USER userid USING 'password'
ここで、小文字の語は、適切な接続パラメーターです。組み込み SQL を使用するプログラムでは、ユーザー ID とパスワードの値は、ホスト変数に含めることができます。
TCP/IP を介した接続要求で送信するパスワードを指定する別の方法は、サーバー許可項目を使用することです。サーバー許可リストは、システム上の各ユーザー・プロファイルに関連付けられています。省略時にはリストは空ですが、ADDSVRAUTE コマンドを使用すると項目を追加できます。 TCP/IP を介した DRDA 接続を試行するときには、 DB2 ユニバーサル・データベース (AS/400 版) はサーバー許可リストを検査して、クライアント・ジョブを実行するときのユーザー・プロファイルを調べます。 CONNECT ステートメント上の RDB 名と許可項目内の SERVER 名が一致している場合、接続のユーザー ID としてその項目内の関連付けられた USRID パラメーターが使用されます。また、その項目内に PASSWORD パラメーターが含まれている場合、そのパスワードも接続要求で送信されます。
ADDSVRAUTE コマンドを使用してパスワードを保管する場合には、 QRETSVRSEC システム値が '1' に設定されていなければなりません。省略時値は '0' に設定されています。変更するには、次のように入力します。
CHGSYSVAL QRETSVRSEC VALUE('1')
ADDSVRAUTE コマンドの構文は次のとおりです。
ADDSVRAUTE USRPRF(user-profile) SERVER(rdbname) USRID(userid) PASSWORD(password)
USRPRF パラメーターでは、アプリケーション・リクエスター・ジョブを実行するときのユーザー・プロファイルを指定します。 SERVER パラメーターではリモート RDB 名を指定し、 USRID パラメーターではサーバー・ジョブを実行するときのユーザー・プロファイルを指定します。 PASSWORD パラメーターでは、サーバーにあるユーザー・プロファイルのパスワードを指定します。
注: | SERVER パラメーターの RDB 名を大文字で指定することは非常に重要です。 |
USRPRF パラメーターを省略すると、 ADDSVRAUTE コマンドを実行するときのユーザー・プロファイルに省略時設定されます。 USRID パラメーターを省略すると、USRPRF パラメーターの値に省略時設定されます。 PASSWORD パラメーターを省略するか、QRETSVRSEC の値が 0 の場合、項目内にパスワードが保管されないため、その項目を使用して接続試行を行うと、使用される機密保護メカニズムはユーザー ID だけになります。
サーバー許可項目は、RMVSVRAUTE コマンドを使用して削除することができ、 CHGSVRAUTE を使用して変更できます。これらのコマンドの完全な説明は、 AS/400 Command Reference を参照してください。
RDB のサーバー許可項目が存在している場合で、 CONNECT ステートメントの USER/USING 書式も使用している場合、後者が優先されます。