Go to main content
Oracle® Solaris 11 セキュリティー開発者ガイド

印刷ビューの終了

更新: 2016 年 11 月
 
 

GSS-API クライアント例の概要

クライアント側プログラム例 gss-client は、サーバーとのセキュリティーコンテキストを作成し、セキュリティーパラメータを確立し、メッセージ文字列をサーバーに送信します。このプログラムは接続時に、単純な TCP ベースのソケット接続を使用します。

以降のセクションでは、gss-client がどのように動作するかを段階的に説明します。gss-client は、GSS-API の機能説明用に設計されたプログラム例であるため、関連部分についてのみ詳しく説明します。

GSS-API クライアント例の構造

    gss-client アプリケーションは次の手順を実行します。

  1. コマンド行を解析します。

  2. メカニズムが指定されている場合、そのメカニズムのオブジェクト ID (OID) を作成します。それ以外の場合、デフォルトのメカニズムが使用されます。これがごく普通の場合です。

  3. サーバーとの接続を設定します。

  4. セキュリティーコンテキストを確立します。

  5. メッセージをラップして送信します。

  6. サーバーが正しくメッセージに署名していることを検証します。

  7. セキュリティーコンテキストを削除します。

GSS-API クライアント例の実行

次に、gss-client 例のコマンド行の書式を示します。

gss-client [–port port] [–d] [–mech mech] host service-name [–f] msg
  • port - host で指定されたリモートシステムへの接続を確立するためのポート番号です。

  • –d フラグ – サーバーへのセキュリティー資格の委託を可能にします。具体的には、deleg-flag 変数が GSS-API 値 GSS_C_DELEG_FLAG に設定されます。d フラグが設定されていない場合、deleg-flag は 0 に設定されます。

  • mech – Kerberos v5 など、使用するセキュリティーメカニズムの名前です。メカニズムが指定されていない場合、GSS-API はデフォルトのメカニズムを使用します。

  • host – サーバーの名前です。

  • service-name – クライアントが要求するネットワークサービスの名前です。そのようなサービスの一般的な例として、telnetftplogin などが挙げられます。

  • msg – 保護されたデータとしてサーバーに送信される文字列です。–f オプションが指定されている場合、msg は文字列を読み取るべきファイル名です。

次に、クライアントアプリケーションプログラムの一般的なコマンド行の例を示します。

% gss-client -port 8080 -d -mech kerberos_v5 erebos.eng nfs "ls"

次の例では、メカニズム、ポート、および委託が指定されていません。

% gss-client erebos.eng nfs "ls"