ページの先頭行へ戻る
Interstage Application Server シングル・サインオン運用ガイド
Interstage

付録B ユーザプログラムの記述例

  ここでは、Java言語を用いてSSOリポジトリを操作するユーザプログラムの記述例を紹介します。

  上記以外にSSOリポジトリを操作するユーザプログラムが必要な場合は、紹介している記述例を参考に、運用にあわせたユーザプログラムを作成してください。

  上記の処理には、共通した前処理と後処理があります。これらのリポジトリ操作処理は、前処理と後処理の間に挿入してプログラムを作成してください。

  以下に、共通処理について説明します。

1)前処理(リポジトリとの接続をオープンする)


  以下の例では、ssohostという名前のホストにポート番号389を使用して、セキュリティレベル“simple”で接続します。
  bindDnおよびpasswordには、管理者用DNとパスワードをそれぞれjava.lang.Stringで指定してください。

java.util.Hashtable env = new java.util.Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory");
env.put(Context.PROVIDER_URL, "ldap://ssohost:389");
env.put(Context.SECURITY_AUTHENTICATION, "simple");
env.put(Context.SECURITY_PRINCIPAL, bindDn);
env.put(Context.SECURITY_CREDENTIALS, password);
DirContext ctx = new InitialDirContext(env);


  管理者用DNとパスワードについては、パスワードアタックへの対策を考慮し、取り扱いには十分注意してください。
  パスワードアタックへの対策については、“セキュリティシステム運用ガイド”の“セキュリティ侵害の脅威”-“Interstage シングル・サインオン”-“セキュリティ対策”を参照してください。

2)後処理(リポジトリとの接続をクローズする)


  前処理で接続したリポジトリとの接続をクローズします。
  ctxは、共通の前処理で得られた結果を使用します。

ctx.close();

  なお、SSOリポジトリを操作するユーザプログラムを作成する際は、SSOリポジトリの正しい設計のもと、不正なSSOリポジトリデータを作成しないよう十分注意してください。
  SSOリポジトリの設計については、“2.2.1 SSOリポジトリの設計”を参照してください。