- 初期設定
- ログオン要求
- Terminate(終了)
ENABLE LGUXコマンドを実行すると出口が初期化されます。初期化時にTDPLGUXは作業域の取得やファイルのオープンなどを行ないます。
ログオン要求は、TDPLGUXに渡されると続行できるようになります。
TDPLGUXに対してログオン要求呼出しが行なわれる際には、次の方法で処理されます。
- TDPでパラメータ リストが作成されTDPLGUXに渡される。このパラメータ リストは次のもので構成される。
- TDP情報
- リクエスター情報
- タイムスタンプ
- タイミング精度
- ユーザー アドレス空間の出口(User Address Space Exit: TDPUAX)からのパラメータ データ(z/OSのみ)
- ログオン情報
- デフォルトのSECLOGONクラスの修正
CLIv2でログオン列の接頭語とみなされるTDP識別子と区切りスラッシュは、CLIv2によって除去されるので、出口の中にはなくなります。
- ユーザー ルーチンでパラメータ データが処理されると、出口によって次のいずれかが行なわれる。
- ログオン列の拒否または受諾
- ログオン列の妥当性検査(ユーザーIDしかない場合)
- TDPがデータベース システムのユーザーIDを認証済みの場合はログオン文字列の提供
- TDPUAXによる妥当性検査が済んでいるかどうかの判別(z/OSのみ)
- ログオン文字列の修正。ログオン文字列が修正される場合、パラメータ リスト中のログオン文字列の場所と長さが出口に渡されます。
セキュリティ情報が有効であるためには、TDPが常駐する論理ホストとユーザーIDの双方に、「NULL PASSWORD」でログオンする権利が付与されていることが必要である。これは特定のユーザーIDに対し、SQL GRANT LOGON ON <論理ホストID> TO USERID <ユーザーID> WITH NULL PASSWORDを実行するか、すべてのユーザーIDに対して、SQL GRANT LOGON ON <論理ホストID> AS DEFAULT WITH NULL PASSWORDを使用すると実行できる。
データベース システムのユーザーIDはパスワードで定義する必要がある一方、TDPがこのユーザーIDを認証している場合はこのパスワードは無視される。パスワードが無視されるために、パスワードが期限切れになってもTDPがこのユーザーIDを認証しているときはログオンが妨げられない。しかし、TDPがこのユーザーIDを認証していない場合は、パスワードが使用されるためにログオンは妨げられる。
- ログオン要求が受諾されると、TDPLGUXから戻りコード0が送信される。
ログオン要求が拒否されると、TDPLGUXから非ゼロ戻りコードが送信され、セキュリティ出口に違反が報告されます。
TDPLGUXのコーディング例については、TDPに付属のTDPLGUXのサンプルを参照してください。
パラメータ リストはTDPLGPRMマクロによって記述されます。このマクロは製品に付属しています。