第 III 部:Kerberos 環境でのシングルサインオンの配備

課題 6: シングルサインオンの配備

この課題の目標:

この課題の目標は、認証に Kerberos を使用してシングルサインオンを行う JAAS アプリケーションを構成する方法について学習することです。シングルサインオンは、ユーザーがシステムまたは一連のサービスに対して 1 回のみ認証を行う必要があることを意味します。初期認証のあと、ユーザーは初期認証に使用したのと同じアイデンティティーを使用して、システム内のほかのサービスにアクセスできます。

シングルサインオンは、異なるタイプの認証を記述する場合に使用できます。HTTP ベースのネットワークシングルサインオンプロトコルがあります。ネットワークサービス用の Kerberos ベースのシングルサインオンがあります。この課題では、Kerberos ベースのシステムでシングルサインオンを行う方法について説明します。また、基盤となるネイティブオペレーティングシステムからすでに取得されている Kerberos 資格をインポートする方法についても説明します。

この課題の内容およびリソース:

  1. Kerberos を使った Java のシングルサインオン

また、Kerberos および Java GSS の内容説明については、課題 2 および 4 の説明を参照してください。

実行手順:

  1. JAAS 構成ファイルを編集します。これは src/jaas-krb5.conf
    にあります

このファイルには、「クライアント」および「サーバー」の 2 つのエントリがあります。  クライアントエントリに、行「useTicketCache=true」を追加します。

更新された jaas-krb5.conf のコードリスト。

  1. client {
  2.     com.sun.security.auth.module.Krb5LoginModule required
  3.     useTicketCache=true
  4.     principal="test";
  5. };
  6. server {
  7.    com.sun.security.auth.module.Krb5LoginModule required
  8.     useKeyTab=true
  9.     storeKey=true
  10.     keyTab=sample.keytab
  11.     principal="host/j1hol-001";
  12. };

  1. ネイティブオペレーティングシステムへの Kerberos ログインを実行します。
    Kerberos にログインするには、次のように kinit コマンドを使用します。
    % kinit test
    
    次に、パスワードの入力を求められた場合は、changeit を入力します。
  2. 以前と同様に課題 1 - 5 のクライアントプログラムおよびサーバープログラムを実行すると、クライアントアプリケーションからパスワードの入力を求められることがなくなります。

Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.