アプリケーションで Session オブジェクトを作成するには、NotesFactory createSession メソッドを呼び出します。
Notes のユーザー ID に基づいてローカル呼び出しを行うアプリケーションでは、次の方法で Session オブジェクトを作成します。この場合、Domino サーバーまたは Notes クライアントがローカルにインストールされている必要があります。
サーバー上では、上記のメソッドは [読者] フィールドに従ってアクセスを制限します。フルアクセスを可能にするには、以下のメソッドを使用します。これらのメソッドはクライアント上でも動作しますが、クライアントでは不要です。
このメソッドは、非常に限定された種類のサーバー常駐アプリケーションでの使用を目的とした特殊な Java 専用コンストラクタです。
信頼できるセッションは特殊な機能を持つため、アプリケーションには重大な責任が割り当てられます。信頼できるセッションは、サーバー上のすべてのデータベースにアクセスできます。アプリケーション開発者は、セキュリティの提供についてのすべての責任を負います。セキュリティ問題を回避するために、特に注意する必要があります。
信頼できるセッションは、サーバーに複製できるコードパッケージでは使用できません。したがって、このメソッドはエージェントまたは XPage ではサポートされません。信頼できるセッションを取得するには、アプリケーションをサーバーハードウェア上に物理的にインストールする必要があります。例えば、サーブレット、アドイン、独立したアプリケーションとしてインストールします。
信頼できるセッションを使用するアプリケーションの一例は、特定のメールファイルのグループへの変更をモニターし、モバイルデバイスなどの別の宛先に変更内容を反映するデータリフレクションアプリケーションサーバーです。
Internet Session は、該当するサーバー文書の [サーバーアクセス] と [可能なプログラムの制限] セクション、およびターゲットデータベースの ACL の [Web ユーザーによるアクセスの上限] セクション ([詳細] タブ) に従い、さらにアクセスを制限します。
SSL (セキュアソケットレイヤー) を有効にするには、String args[] パラメータを使用して args 配列の要素として「-ORBEnableSSLSecurity」を指定します。リモート (IIOP) アプリケーションの場合、クライアントは、サーバーのデータディレクトリにある domino/java の TrustedCerts.class に保存された、サーバーの信頼されたルートの証明書に対するアクセス権が必要です。このファイルは、DIIOP タスクの起動時に生成され、サーバー文書に指定された SSL ポートでの待機が可能になります。この HTTP タスクが各アプレットに TrustedCerts.class を配信します。他のアプリケーションの場合は、TrustedCerts.class が classpath 上にあることを確認してください。
IOR を送れるのが HTTPS ポートだけの場合は、String args[] パラメータを使用して getIOR を呼び出し、args[] 配列の要素として「-HTTPEnableSSLSecurity」を指定します。次に、返された IOR を createSessionWithIOR 呼び出しで使用します。
TrustedCerts.class 以外のファイルに、サーバーの信頼されたルートの証明書が含まれている場合には、args[] 配列の要素として「-ORBSSLCertificates=filename」を指定します。notes.ini 変数として「DIIOP_DUP_KEYRING=filename」が指定されると、DIIOP タスクは TrustedCerts.class と複製ファイルを生成します。これは、別々の信頼されたルートの証明書を持つ 2 つのサーバーにアクセスする場合に役立ちます。
getIOR 操作は、SSL でも認証されません。
アクセスされる HTTP または HTTPS ポートで匿名アクセスが許可されていない場合は、user パラメータと passwd パラメータを指定して getIOR メソッドを使用します。
NotesFactory クラスの仕様は次のとおりです。
public class NotesFactory {
/* Local session - Notes client must be installed */
static public Session createSessionWithFullAccess()
throws NotesException
static public Session createSessionWithFullAccess(String passwd)
throws NotesException
static public Session createSession()
throws NotesException
/* Remote (IIOP) session using host name */
static public Session createSession(String host)
throws NotesException
static public Session createSession(String host,
String user, String passwd)
throws NotesException
static public Session createSession(String host,
String args[], String user, String passwd)
throws NotesException
static public Session createSession(String host,
org.omg.CORBA.ORB orb, String user, String passwd)
throws NotesException
/* Remote (IIOP) session using IOR */
static public Session createSessionWithIOR(String IOR)
throws NotesException
static public Session createSessionWithIOR(String IOR,
String user, String passwd)
throws NotesException
static public Session createSessionWithIOR(String IOR,
String args[], String user, String passwd)
throws NotesException
static public Session createSessionWithIOR(String IOR,
org.omg.CORBA.ORB orb, String user, String passwd)
throws NotesException
/* Remote (IIOP) session for applet */
static public Session createSession(java.applet.Applet app,
String user, String passwd)
throws NotesException
static public Session createSession(java.applet.Applet app,
org.omg.CORBA.ORB orb, String user, String passwd)
throws NotesException
/* For Single Sign-on */
static public Session createSession(String host,
String cookie)
throws NotesException
static public Session createSession(String host,
org.omg.SecurityLevel2.Credentials token)
throws NotesException
static public Session createSession(String host,
HttpServletRequest request)
static public Session createSession(String host,
String args[], String cookie)
throws NotesException
static public Session createSession(String host,
String args[], org.omg.SecurityLevel2.Credentials token)
throws NotesException
static public Session createSession(String host,
String args[], HttpServletRequest request)
throws NotesException
static public Session createSession(String host,
org.omg.CORBA.Orb orb, String cookie)
throws NotesException
static public Session createSession(String host,
org.omg.CORBA.Orb orb, org.omg.SecurityLevel2.Credentials token)
throws NotesException
static public Session createSession(String host,
org.omg.CORBA.Orb orb, HttpServletRequest request)
throws NotesException
static public Session createSessionWithIOR(String IOR,
String cookie)
throws NotesException
static public Session createSessionWithIOR(String IOR,
org.omg.SecurityLevel2.Credentials token)
throws NotesException
static public Session createSessionWithIOR(String IOR,
HttpServletRequest request)
static public Session createSessionWithIOR(String IOR,
String args[], String cookie)
throws NotesException
static public Session createSessionWithIOR(String IOR,
String args[], org.omg.SecurityLevel2.Credentials token)
throws NotesException
static public Session createSessionWithIOR(String IOR,
String args[], HttpServletRequest request)
throws NotesException
static public Session createSessionWithIOR(String IOR,
org.omg.CORBA.Orb orb, String cookie)
throws NotesException
static public Session createSessionWithIOR(String IOR,
org.omg.CORBA.Orb orb, org.omg.SecurityLevel2.Credentials token)
throws NotesException
static public Session createSessionWithIOR(String IOR,
org.omg.CORBA.Orb orb, HttpServletRequest request)
throws NotesException
/* Login to Websphere with session using LPTA token */
static public Object getCredentials(Session sess)
throws NotesException
/* Create an ORB for connection sharing */
static public org.omg.CORBA.ORB createORB()
static public org.omg.CORBA.ORB createORB(String args[])
static public org.omg.CORBA.ORB createORB(Properties props)
/* Get IOR from host */
static public String getIOR(String host)
throws NotesException;
static public String getIOR(String host,
String user, String passwd)
throws NotesException;
static public String getIOR(String host, String args[])
throws NotesException;
static public String getIOR(String host, String args[],
String user, String passwd)
throws NotesException;
}