第9章
この章では、Novell exteNd Application Serverのセキュリティを設定する方法について説明します。この章は、次の項目の節で構成されます。
Silver Securityのユーザとグループの設定については、を参照してください。
アプリケーションサーバの3階層のアーキテクチャで、セキュリティはサーバ階層に設定されます。
アプリケーションサーバは、データベース(アプリケーションの展開先)または接続プール(データの取得元)に複数の接続を持つ単一のユーザとして機能します。アプリケーションサーバはこのように機能して、データソースの追加ユーザとオブジェクトセキュリティを追加します。したがって、アプリケーションサーバはアクセス権を持つユーザとして扱われます。ネイティブデータソースアクティビティとセキュリティ手段は失われません。
アプリケーションサーバは、通常のHTTP、SSL 3.0プロトコルを使用するHTTP、または TLS (Transport Layer Security) 1.0プロトコルを使用するHTTPSをサポートします。HTTPSはクライアントとアプリケーションサーバ間のデータを暗号化し、プライバシーとデータの整合性を確保します。
アプリケーションサーバで実行するEJBはIIOP over SSLプロトコルを使用し、プライバシーとデータの整合性を確保します。 IIOP over SSLサポートはORBによって提供されます。アプリケーションサーバは、EJBのRSA認証のみをサポートします。
ORBのIIOP over SSLサポートの詳細については、Novell exteNdメッセージングプラットフォームヘルプを参照してください。
SSLについて Netscapeが開発したSSL 3.0は、インターネットにセキュリティとプライバシーを提供します。 IEFT (Internet Engineering Task Force)によって定義されたSSL 3.0 に基づくTLS (Transport Layer Security) 1.0 プロトコルは、最終的にはSSL 3.0に置き換わるものとなります。HTTPSはクライアントとサーバ間のデータを暗号化し、プライバシーとデータの整合性を確保します。SSLプロトコルはアプリケーションに依存せず、HTTPやFRPなどのプロトコルを重ねることができます。SSLプロトコルは暗号化キーをネゴシエートでき、データがより高いレベルのアプリケーションに交換される前にサーバを認証できます。SSLプロトコルは、暗号化、認証、およびメッセージ認証コードを使用して、転送チャネルのセキュリティと整合性を維持します。
SSLをアプリケーションにアクセスさせるよう選択できます。SSLはパフォーマンスに影響するため、特定のデータ依存サイト部分のみにSSLを使用することを決定できます。または、アプリケーションサーバSSLの暗号化/解読パフォーマンスを向上させるCHI (Cryptographic Hardware Integration)の使用を考慮できます。 アプリケーションサーバにCHIをインストールする方法とその使用方法については、CHI (Cryptographic Hardware Integration)の使用を参照してください。
HTTPSについて HTTPSを使用して、プライバシー、ユーザ認証、およびメッセージ整合性を提供する通信チャネルを取得します。 アプリケーションサーバは、次のようにSSLおよびTLSを実装します。
SSL接続またはTLS接続を確立するには、アプリケーションサーバには認証証明書(パブリックキー証明書、デジタルID、またはデジタル証明書とも呼ばれます)が必要です。証明書は、偽造不可能なデジタルの「IDカード£です。証明書はサーバを記述し、認証チェーンを含みます。
クライアントとサーバは、所有する証明書と先方の証明書(クライアントに証明書がある場合)の情報を使用して、送信内容を暗号化します。これは、意図した受信者のみがデータを解読できることを送信者が確認でき、データが請求場所から来たことおよび改ざんされていないことを受信者が確認できることを意味します。
既存ユーザへJ2EE役割をマッピング アプリケーションサーバを使用できるユーザとグループ(Silver Securityユーザ、または外部セキュリティシステムのユーザとグループ)に、J2EEアーカイブ展開計画で定義された役割をマップできます。 この機能の詳細については、セキュリティプロバイダシステムへのアクセスを参照してください。
認証は、クライアントセッションで開始および終了します。RSA (Rivest-Shamir-Adleman)およびDSA (Diffie-Hellman) 暗号化アルゴリズムは、パブリックキーとプライベートキーに基づきます。SSLプロトコルおよびTLSプロトコルは、ID、パブリックキー、および証明書を発行したCA (認証局)のIDと署名を含むX.509証明書をサーバが持っていることを要求します。クライアントは、受信した証明書に基づいてサーバを認証します。クライアントは、さらにデータ転送の暗号化に使用するため、パブリックキーを暗号化し、サーバに返送します。通常使用される暗号化アルゴリズムは、RC4、DES、および3DESです。
クライアントセッションは、次の3モードのうちいずれかで動作します。
アプリケーションサーバのセキュリティシステムは、次の4つの主要なセキュリティ機能を提供します。
アプリケーションサーバのセキュリティシステムは、管理者を介在せずにすべてのデータ整合性およびデータプライバシーの機能を処理します。
この章の残りの部分では、アプリケーションサーバ環境に認証を実装する方法について説明します。
「認証」は、ユーザIDを判断するプロセスです。アプリケーションによっては、ユーザID/パスワードのペアを要求する、または認証証明書を使用するなど、チャレンジを通してユーザを識別します。Anonymousユーザがサイトのオブジェクトにアクセスしようとすると、ログインを要求するかまたはエラーを返信できます。ログインを要求する場合、サーバレベルまたはオブジェクトレベルで実行できます。SMCを使用すると、特定のオブジェクトでアクセス時にログインが要求されるように設定できます。または、サーバレベルの[ユーザの認証を必須にする]設定を使用して、ユーザがサーバに最初に接続したときにログインすることを強制できます。
詳細については、認証の有効化を参照してください。
SSLまたはTLS通信を使用する場合は、次の操作を実行する必要があります。
サーバへのユーザおよびデータベース追加などの管理作業を行うときは、すべての通信が暗号化されるように、サーバと使用しているクライアント(SMCまたはブラウザなど)の間にセキュア(SSL)接続が必要です。
この後に続く3つの節では、次の内容について説明します。
アプリケーションサーバおよびJavaクライアント間のセキュア通信には、RSAまたはDSAプロトコルを使用できます。
各プロトコルに固有なポートを設定できるため、指定するポートは、ユーザのランタイムポートまたは管理ポートを意図するかどうかによって異なります。
詳細については、個別のポートの設定を参照してください。
Javaクライアントとアプリケーションサーバ間にセキュア(SSL)接続を確立する
RSAまたはDSA証明書をアプリケーションサーバにインストールします。
詳細については、証明書の使用を参照してください。
詳細については、RSA/DSAポートの有効化を参照してください。
注記: RSAポートデフォルトを使用する場合、コマンドラインには「https://hostname 」だけを指定します。443以外の番号のポートにRSAを接続する場合、コマンドラインにポート値を指定する必要があります。
アプリケーションサーバとHTMLクライアント(ブラウザ)間のセキュア通信には、RSAプロトコルを使用します。
HTMLクライアントとアプリケーションサーバ間にセキュア(SSL)接続を確立する
詳細については、証明書の使用を参照してください。
詳細については、RSA/DSAポートの有効化を参照してください。
RSAポートのHTTPSを使用して、サーバにブラウザを開きます。
指定するRSAポートは、実行する操作のタイプによって異なります。
サーバを指定し、その後にRSAランタイムまたは管理ポートの番号(オプション)を指定します。
https://server[:port]
https://tara:443
注記: RSAポートのデフォルトを使用する場合、コマンドラインには「https://hostname 」だけを指定します。443以外の番号のポートにRSAを接続する場合、コマンドラインにポート値を指定する必要があります。
アプリケーションサーバとEJBクライアント間のセキュア通信は、ORBのIIOP over SSL機能を使用して確立されます。起動時に、アプリケーションサーバはRSA証明書をORBにエクスポートします。EJBの展開計画が暗号を指定し、アプリケーションサーバにRSA証明書がインストールされている場合、ORBは通信がセキュアであることを確認します。
セキュア通信に参加するには、Javaクライアントはagrootca.jarファイルへのアクセスが必要です。 このファイルは、\Common\libディレクトリにインストールされています。このファイルは、SilverJ2EEClientクライアントに自動的にインストールされます。
展開されたEJBに暗号を指定する方法については、『機能ガイド』のJ2EEアーカイブ展開に関する章を参照してください。
EJBクライアントとアプリケーションサーバ間にセキュア(SSL)接続を確立する
詳細については、証明書の使用を参照してください。
詳細については、RSA/DSAポートの有効化を参照してください。
HTMLまたはJavaクライアントの場合、RSAランタイムポートのHTTPSを使用して、ブラウザをサーバに接続します。
https://server:RSA_port_rt
https://tara:443
https://tara
注記: RSAランタイムポートがポート443(デフォルト)を使用する場合、コマンドラインには「https://hostname 」だけを指定します。443以外の番号のポートにRSAを接続する場合、ポート値を指定する必要があります。
セッションレベルフェールオーバーが指定されているステートフルセッションbeanを含むEJBアプリケーションには、IIOP SSL通信のポート範囲を作成する必要もあります。
IIOP SSLポート範囲作成の詳細については、ORB設定の指定を参照してください。
システムは、提供したグループおよびユーザのリストに従って、ユーザおよび許可レベルを検証します。ユーザおよびグループ情報は、Silver Securityと呼ばれるアプリケーションサーバのネイティブセキュリティシステムを使用して定義できます。または、外部セキュリティシステムから取得できます。Silver Security情報は、すべてSilverMasterデータベースに保存されます。外部セキュリティの場合、情報はすべて外部システムより取得されます。
アプリケーションサーバは、次のシステムからユーザおよびグループを認識します。
セキュリティプロバイダ |
説明 |
---|---|
Silver Security |
SilverMasterデータベースの有効なユーザおよびグループリストを維持するネイティブセキュリティ |
Windows NT ディレクトリサービス |
アプリケーションサーバをNTドメインネームレジストリに接続する機能 |
LDAP (Lightweight Directory Access Protocol) |
アプリケーションサーバを定義されたLDAPディレクトリに接続するディレクトリサービス |
NIS+ |
SunOS 5.x以降のオペレーティングシステムで使用できるネームサービスであるNetwork Information Services Plus |
X.509証明書 |
アプリケーションサーバは、VeriSign、Netscape Certificate Server、およびMicrosoft Certificate Serverなどの認証局サーバから生成されたクライアント証明書をサポートします。詳細については、証明書の使用を参照してください。 |
アプリケーションサーバは、ネイティブのUNIXセキュリティとWindows NTおよびLDAPディレクトリに接続するJNDI (Java Naming and Directory Interface)を実装します。
SMCを使用して、セキュリティプロバイダシステムへのアクセスを設定できます。プロバイダディレクトリへのアクセスを設定すると、外部システムからのユーザおよびグループにアクセス制御を定義できます。
Silver Securityから新しいセキュリティプロバイダに変更する場合は、管理者アカウントが新しいプロバイダアカウントへのアクセス権を持っていることを確認してください。
警告: 管理者アカウントに新しいセキュリティプロバイダへのアクセスを与える前にSilver Securityを無効にした場合は、SilverMasterInit -lを実行してアプリケーションサーバへのアクセスを回復する必要があります。
Silver Securityのユーザとグループの設定については、を参照してください。アクセス制御については、認証とアクセス制御を参照してください。
登録するプロバイダのタイプを選択します(デフォルトではすべてのプロバイダが選択されます)。
NTはWindows NTを実行している場合のみに有効です。NTを選択した場合、NTドメインを追加する必要はありません。NTは、アプリケーションサーバがプライマリおよび信頼するドメインを検出するために使用するシステムコールを提供します。ただし、ユーザがNT名でログインできるようにサーバを設定する必要はあります。NTセキュリティの使用を参照してください。
LDAPまたはNIS+サーバ接続を追加するには、適切な項目を選択し、[追加]をクリックします。
LDAPセキュリティプロバイダ追加の詳細については、LDAPセキュリティの使用を参照してください。
NIS+セキュリティプロバイダ追加の詳細については、NIS+セキュリティの使用を参照してください。
SMCでは、セキュリティリソースタイムアウト時間を設定することもできます。この時間は、定義されたセキュリティプロバイダから、使用できるユーザおよびグループリストをアプリケーションサーバが再ロードする頻度を定義します。デフォルト値は、15分です。
外部システムの情報が頻繁に変わらない場合または接続が遅い場合は、この値を増やすことができます。
さまざまなNTディレクトリサービスを使用して、NTユーザおよびグループを管理できます。たとえば、NTユーザ名およびパスワードを使用してログインするユーザは、セッションごとにこの作業を1回しか行う必要がありません(サーバまたはクラスタレベルに追加セキュリティを設定していない場合)。
NTユーザおよびグループを使用すると、セキュリティ管理を簡潔にできます。たとえば、ローカルグループを定義すると、複数ドメインのユーザおよびグローバルグループを単一グループにまとめられます。
「ローカルグループ」は、作成されたドメインでのみ使用できます。「グローバルグループ」は、独自のドメインと信頼するドメインでのみ使用できます。
サーバコンピュータで定義されたローカルグループには、ローカルユーザのほか、プライマリドメインまたは信頼するドメインのグローバルグループおよびユーザを含めることができます。ただし、NTローカルグループに他のローカルグループを含めることはできません。
NTユーザグループの詳細については、Windows NTのマニュアルを参照してください。
NT認証の高速化 信頼する大きなドメインを多数持つ場合、ローカルグループをサポートすると、NT認証が低速化する可能性があります。これが問題になる場合は、次のうちいずれかの方法でローカルグループサポートを無効にして、認証を高速化できます。
httpd.propsファイル(アプリケーションサーバの\Resourcesディレクトリにあります)に次のラインを追加します。
http-server.com.sssw.srv.SupportNTLocalGroups=false
Boolean.FALSEにプロパティPROP_SUPPORT_NT_LOCAL_GROUPS(AgiAdmServerおよびAgiAdmClusterにあります)をプログラムによって設定します。
NTユーザおよびグループをサポートするには、アプリケーションサーバに[オペレーティングシステムの一部として機能]および[サービスとしてログオン]のオペレーティングシステム権限が必要です。これらの権限は、デフォルトNTシステムアカウントで実行するサービスとしてアプリケーションサーバが設定される場合に設定されます。ただし、ユーザアカウントで実行するサービスに変更した場合、またはサービスとしてサーバを実行することを停止する場合は、2つのNTシステム権限が設定されていることを確認する必要があります。
ユーザアカウントで実行するサービスに変更した場合、NTコントロールパネルは[サービスとしてログオン]特権をアカウントに自動的に与えますが、[オペレーティングシステムの一部として機能]特権は手動で設定する必要があります。信頼するドメインからユーザがログインできるようにするには、サービスとしてアプリケーションサーバを実行しているかどうかに関係なく、[ローカルログオン]権限を設定する必要があります。
Windowsセキュリティ設定の詳細については、Windowsのマニュアルを参照してください。
LDAP (Lightweight Directory Access Protocol)は、インターネットクライアントがTCP/IP接続で任意の階層型属性/値ペアのデータベースを照会および管理できるようにするディレクトリサービスです。LDAPは、アプリケーションがLDAPと通信できる仕様を提供します。アプリケーションサーバでは、LDAPユーザおよびグループの指定、LDAP属性の表示、およびアクセス制御式でのLDAPユーザやグループの使用などを行えます。アプリケーションサーバは、LDAPプロトコルバージョン2およびバージョン3を両方サポートするLDAPサーバ(NovelleDirectory\xaa 、Microsoft Active Directory、およびSun One Directory Serverなど)へのアクセスをサポートします。
アプリケーションサーバは、次のようにLDAPサーバと通信します。
LDAPグループおよびユーザについての情報(クライアント資格情報を含みます)がクリアテキストとして転送されることを防ぐには、アプリケーションサーバとLDAPサーバ間でSSLまたはTLS接続を使用します。
アプリケーションサーバでSSLまたはTLS通信を使用するには、SSLまたはTLSをサポートするようにLDAPサーバをすでに設定済みであり、LDAPサーバに証明書をインストール済みである必要があります。
詳細については、LDAPサーバのマニュアルを参照してください。
注記: LDAPでSSLまたはTLS通信を使用すると、要求された場合にLDAPサーバに送信するアプリケーションサーバ証明書を設定できます。LDAPサーバは、証明書を必要とするまたは要求するよう設定されると、送信されてきたすべての証明書を検証しようとします。
LDAPバージョン2プロトコルのみ使用するように、アプリケーションサーバ接続を設定できます。デフォルトでは、アプリケーションサーバは最初にLDAPバージョン3を使用してLDAPサーバに接続しようとします。接続に失敗するとLDAPサーバはエラーを報告し、アプリケーションサーバはバージョン2プロトコルを使用して接続しようとします。
LDAPバージョン3がサポートされていない場合 このアプローチは、LDAPバージョン3を使用する場合に必ずしもエラーを報告しないLDAPサーバ(Microsoft Site Serverなど)では使用できません。LDAPバージョン3がサポートされていない場合は、設定手順のStep 6のSMCで[LDAPバージョン2の強制使用]オプションを設定する必要があります。
サーバ、(オプション)ログイン属性、およびユーザ名/パスワードを次のように指定します。
フィールド |
指定 |
---|---|
サーバ |
LDAPサーバの名前。サーバ名はネットワークで認識される必要があります。LDAPサーバがデフォルト以外のポートを使用する場合、サーバ名の一部として指定する必要があります。 例: localhost:636 |
SSLの使用 |
指定したLDAPサーバおよびポートがSSL通信を使用するように設定されている場合、このオプションを使用します。
|
サーバへの証明書の送信 |
このオプションで、アプリケーションサーバの証明書をLDAPサーバに送信できます。LDAPサーバは、証明書を必要とするまたは要求するよう設定されると、送信されてきたすべての証明書を検証しようとします。 LDAPサーバが証明書を要求するまたは必要とするように設定され、このオプションが有効になっている場合、アプリケーションサーバの証明書はLDAPサーバに送信され、信頼するCA証明書リストに対して検証できます。LDAPサーバが証明書を要求するまたは必要とするように設定され、アプリケーションサーバが証明書を持っていない場合、アプリケーションサーバは証明書要求の[サーバへの証明書の送信]コマンドを無視します - LDAPサーバが証明書を必要とする場合、接続は失敗します。 [SSLの使用](前の項目)も選択している場合は、[サーバへの証明書の送信]チェックボックスのみオンにできます。 |
LDAPバージョン2の強制使用 |
このオプションを設定して、LDAPバージョン3をサポートしないLDAPサーバ(Microsoft Site Serverなど)で使用します。
|
ユーザログイン属性 |
(オプション)このプロパティの値を指定すると、特定のユーザを識別するために使用できるLDAP属性を定義できます。すべてのユーザに固有の属性を選択する必要があります。 ヒント: 値を指定すると、LDAPユーザのログインを簡素化できま す。詳細については、LDAPユーザの簡易ログインを参照してくだ さい。 |
ユーザ名およびパスワード |
適切な場合には、ユーザ名およびパスワードを入力して、アプリケーションサーバがLDAP情報にアクセスできるようにします。アプリケーションサーバは、必要な場合にシステムログイン資格情報を使用して、一般LDAPサーバ情報にアクセスします。 LDAPサーバが匿名アクセスを許可する場合、アカウント値は必要ありません。
|
このパネルを使用して、LDAPサーバのグループを指定します。
項目 |
説明 |
---|---|
グループ場所 |
(必須)グループエントリの検索を開始する階層でレベルを識別する識別名。たとえば、mycoという組織に存在するemployeesという部門で開始するには、次のように入力します。 ou=employees,o=myco 階層でemployeesを含め、下のすべてのグループが含まれます。
|
グループフィルタ |
(必須) LDAP検索フィルタは、LDAPサーバのグループを構成するものを決定するために使用されます。一般的使用法は、グループを識別するオブジェクトクラス属性値の指定です。フィルタの定義は、すべての有効なLDAP検索フィルタです。例: (objectclass=groupofuniquenames) |
グループの属性 |
グループオブジェクトの属性を使用してグループメンバーシップを定義するLDAPサーバ(Netscape Directory Serverなど)に必要です。 |
ユーザの属性 |
ユーザオブジェクトの属性を使用してグループメンバーシップを定義するLDAPサーバ(Microsoft Site Serverなど)に必要です。 注記: MicrosoftのActive Directoryは、グループメンバーシップを定義するグループ属性およびユーザ属性をサポートします。memberOfのユーザの属性およびユーザ/グループの属性の指定は、最も効率的な設定です。 |
グループ/ユーザ属性 |
(必須) SMCでグループのすべてのメンバー(ユーザ)を表示するために使用する属性。 入力する名前は、グループメンバーシップを定義するLDAPグループまたはユーザ属性です。例: uniquemember |
グループ説明属性 |
(オプション) SMCでグループ説明を識別するために使用する属性。入力する名前は、説明をマップするLDAP属性です。例: メモ |
グループ追加属性 |
指定したLDAPグループ属性をすべてSMCに一覧表示する場合は、[すべて]を選択します。追加属性を表示しない場合は、[なし]を選択します。 指定した属性は、[ユーザとグループ]パネルでグループを選択して、プロパティインスペクタを開くと、タブに表示されます。
|
項目 |
説明 |
---|---|
ユーザの場所 |
(必須)ユーザ検索を開始する階層でポイントを識別する識別名。たとえば、softwareに存在するdevelopersというポイント(またはノード)で開始するには、次のように入力します。 ou=developers,o=software 階層でdevelopersを含め、下のすべてのユーザが含まれます。 |
ユーザフィルタ |
(必須) LDAP検索フィルタは、LDAPサーバのユーザを構成するものを決定するために使用されます。一般的使用法は、ユーザを識別するオブジェクトクラス属性値の指定です。フィルタの定義は、すべての有効なLDAP検索フィルタです。例: (objectclass=person) |
ユーザ説明属性 |
(オプション) SMCでユーザ説明を識別するために使用する属性。入力する名前は、説明をマップするLDAP属性です。例: title |
フルネーム |
(オプション)使用できる場合、フルネーム属性を指定します。例: cn |
追加属性 |
指定したLDAPユーザ属性をすべてSMCに一覧表示する場合は、[すべて]を選択します。追加属性を表示しない場合は、[なし]を選択します。 指定した属性は、[ユーザとグループ]パネルでユーザを選択して、プロパティインスペクタを開くと、タブに表示されます。
|
SMCはLDAPディレクトリに設定を表示します。SMCのセキュリティオプションで[ユーザとグループ]を選択すると、いつでも新しい設定を表示できます。
NIS+ (Network Information Services Plus)は、SunOS 5.x以上のオペレーティングシステムで使用できるネームサービスです。ユーザはpasswd.org_dir、グループはgroup.org_dirによって識別され、NIS+テーブルに表示されます。ユーザおよびグループを追加すると、アクセス制御のセキュリティの式で使用できます。
SMCを使用して、セキュリティプロバイダに定義したユーザおよびグループを参照できます。
アプリケーションサーバは、Silver Security、NTセキュリティ、LDAPセキュリティ、NIS+セキュリティ、およびCertificate Securityを含む多くのセキュリティレルムをサポートします。Certificate Securityを除くすべてのセキュリティでは、ユーザ名情報およびパスワードなどを指定することによって識別作業を行います。
ユーザがログインすると、次のようなダイアログボックスが表示されます。
認証ダイアログボックスがブラウザによって表示される場合、ブラウザで定義されたダイアログはここで示したダイアログと多少異なって見えますが、同じフィールドから構成されます。
HTTPのユーザ認証は、コロン(:)で区切られたユーザ名およびパスワードを使用することで機能します。 ユーザ名およびパスワードがコロンを含んでいないことを確認してください。特に、長いLDAP識別名の場合は、名前のコンポーネントにコロンが含まれていないことを確認してください。
ユーザ名は、円マークで区切られた3つのパートで構成されます。レルム\認証局\名前
パート |
説明 |
---|---|
レルム |
アプリケーションサーバは、ログイン用に次のセキュリティプロバイダレルムをサポートします。 |
認証局 |
認証局については、次を参照してください。 |
名前 |
ユーザ名 |
ユーザ名ショートカット形式 デフォルトで、アプリケーションサーバは次のように完全なユーザログイン名のショートカット形式を許可しています。
Silver Security ユーザがユーザ名の一部を入力した場合、Silver Securityのユーザ名であると見なされます。例:
注記: Silver Securityの場合、認証局は2つの円記号の間の空白の文字列となります。外部セキュリティシステムが使用されないため、認証局は必要ありません。
Windows NT ユーザがユーザ名の2つの部分を入力した場合、domain\userName形式のNTユーザ名と見なされます。例:
デフォルトでは、LDAPおよびNIS+名は、次のように完全に識別される必要があります。
ユーザ名のLDAP ログイン構文:LDAP\serverName\distinguishedName
LDAP\myServer\cn=Nancy Smith,ou=My Company
ユーザ名のNIS+ ログイン構文:NisPlus\server/nisDomain\username
ユーザは、パス名全体を入力する必要があります。認証局は、スラッシュで区切られた2つのコンポーネントを持つことに注意してください。例:
NisPlus\myServer/domain1.com\jeanw
デフォルトのログイン仕様は、次に説明するように変更できます。
デフォルトのログイン名コンポーネントを上書きできます。使用する外部セキュリティシステムが1つのみ(および外部セキュリティ認証局が1つのみ)の場合、ユーザに短縮名を許可して、ログイン手順を簡潔にできます。
デフォルトのレルムとデフォルトの認証局(オプション)、さらにレルムの表示名を指定します。
例 サイトが、単一のLDAPサーバからセキュリティ名を使用するとします。次のデフォルトを設定できます。
オプション |
指定 |
---|---|
デフォルトのセキュリティレルム |
LDAP |
デフォルトのセキュリティ認証 |
ServerName |
LDAPサーバに存在するユーザは、LDAPユーザ名およびパスワードを使用するだけで、アプリケーションサーバにログインできます。
同じ例で、Silver Securityセキュリティレルムの一部として存在するユーザは、完全なログイン名を指定する必要があります。
SSSW\\SilverName
LDAPでは、LDAPネーミング階層に関連し、ユーザ名は「DN (識別名)」として指定されます。DNはカンマ区切りのノードのリストで、ユーザがルートノードに戻るリーフノードからの属性/名前ペアを含みます。
デフォルトでは、アプリケーションサーバにログインするLDAPユーザは、長いDN全体を入力する必要があります。セキュリティプロバイダとしてLDAPサーバを追加するときに、ユーザログイン属性プロパティを指定することで、LDAPユーザのログインを簡潔にできます。プロパティの詳細については、LDAPセキュリティの使用を参照してください。
ユーザログイン属性を指定した場合、ログインシーケンス中にユーザ資格情報が検証される際に、ログインユーザ名の名前部分に一致した値を使用して、指定したユーザログイン属性が検索されます。LDAPサーバをアプリケーションサーバに定義すると、検索はユーザの場所として識別されたLDAP階層のポイントから開始されます(LDAPセキュリティの使用を参照)。
検索に成功すると、対応するユーザのDN(複数ヒットした場合は最初のもの)を使用して完全修飾ログイン名が構成され、ログイン動作を続行します。検索に失敗すると、[名前]フィールドの値をLDAPユーザの識別名として操作を続行します。これによって、属性が設定されている場合にLDAPログインはいずれかの形式を使用できます。
フィールド |
指定 |
---|---|
デフォルトのセキュリティレルム(SMCの[サーバセキュリティ]パネルで指定) |
LDAP |
ユーザログイン属性(LDAPサーバをアプリケーションサーバに定義する際に指定) |
メール |
ユーザの場所(LDAPサーバをアプリケーションサーバに定義する際に指定) |
o=My Company,c=US |
この例で、デフォルトのセキュリティレルムが定義され、ログイン属性はmailに設定されます。このサイトで、各ユーザのmail属性はユーザの完全なメールアドレスです。
DN がuid=ecraig,ou=Development,ou=Billerica,o=My Company,c=US、メールアドレスがecraig@mycompany.com(mail属性がecraig@mycompany.comのユーザ)であり、myServerというLDAPサーバで定義されたユーザは、次のいずれかのログイン名を使用できます。
myServer\uid=ecraig,ou=Development,ou=Billerica,o=My Company,c=US
または
myServer\ecraig@mycompany.com
フィールド |
値 |
---|---|
デフォルトのセキュリティレルム(SMCの[サーバセキュリティ]パネルで指定) |
LDAP |
デフォルトのセキュリティ認証(SMCの[サーバセキュリティ]パネルで指定) |
myServer |
ユーザログイン属性(LDAPサーバをアプリケーションサーバに定義する際に指定) |
uid |
ユーザの場所(LDAPサーバをアプリケーションサーバに定義する際に指定) |
o=My Company,c=US |
この例では、デフォルトのセキュリティレルムに加え、デフォルトのセキュリティ認証局が指定されています。ログイン属性はuidに設定されています。
同じユーザ(uidはecraig)は、次のうちいずれかのログイン名を使用できます。
uid=ecraig,ou=Development,ou=Billerica,o=My Company,c=US
または
ecraig
証明書は、SSL 3.0プロトコル およびTLS 1.0プロトコル(HTTPS)でHTTPを使用する際に必要です。HTTPSはクライアントとサーバ間のデータを暗号化し、プライバシーとデータの整合性を確保します。証明書は、ユーザの認証にも使用できます。
この節では、次のトピックについて説明します。
「証明書」(パブリックキー証明書、デジタルID、またはデジタル証明書とも呼ばれます)は、ユーザまたはグループのIDを認証するファイルです。証明書は、認証局(CA)と呼ばれる信頼する組織によって発行されるライセンスです。CAは、証明書サービスを提供する外部企業(VeriSignなど)または企業MIS部署などの内部組織である場合があります。
インターネットアプリケーションには、一般的に、広く認識され信頼する保証人が署名したサーバ証明書をお勧めします。インターネットアプリケーションでは、保証人をアプリケーション実行企業とすることで十分です。
ユーザおよびサーバは、IDを証明する証明書を持てます。 プライバシーためにSSLまたはTLSを使用する場合、アプリケーションサーバには、サーバ証明書が必要です。有効になると、サーバはユーザIDを証明するブラウザのクライアント証明書を要求します。
証明書は、次のような重要なセキュリティサービスを提供します。
次の表は、アプリケーションサーバの証明書サポートについて説明しています。
サポート項目 |
説明 |
---|---|
サーバ証明書 |
サーバ証明書は、SSLまたはTLS/HTTPSに必要です。これにより、クライアントはサーバを認証できます。クライアントのタイプにより、証明書には次の2つのタイプがあります。
注記: Javaクライアントは、アプリケーションサーバへのSSL接続を確立する際に、JARファイルに保存された信頼するCA証明書リストに対してサーバ証明書を検証します。JavaクライアントのSSLサーバ証明書の検証を参照してください。 |
クライアント証明書 |
クライアント証明書はオプションで、サーバによるユーザ認証に使用されます。ブラウザにインストールされます。VeriSignを含め、多数の認証局からクライアント証明書を取得できます。各クライアント証明書は、証明書を生成したCA証明書を含みます。サーバには対応するCA証明書が必要です。 注記: アプリケーションサーバは、DSAクライアント証明書をサポートしません。 |
サーバのCA証明書 |
CA証明書は、署名したCAに基づき信頼するクライアントを表します。CA証明書は、対応するHTMLクライアント証明書を検証するためにサーバで要求されます。サーバは、インストールされたCA証明書により生成または署名されたクライアント証明書のみを認証します。 |
一般的に、「グローバル証明書」と呼ばれるものは、VeriSignのGlobal Secure Site IDです。世界中で128ビット暗号化を許可するデジタルID形式です(Secure Site IDと呼ばれる標準VeriSignデジタルIDは、米国ベースの企業が米国外で128ビット暗号化を使用することを禁止しています)。
Global Secure Site IDをサポートするサーバとして認証するかどうかは、VeriSignが決定します。Global Secure Site IDのサポートを宣言するのは、Novellなどのサーバベンダではありません。
詳細については、http://digitalid.verisign.com/server/global/help/globalFAQ.htmを参照してください。
次のタスクにSMCを使用できます。
SMCは、RSAサーバ証明書に次の機能を提供します。
注記: ディスパッチャに対して証明書を生成するには、ディスパッチャ用サーバ証明書の作成とインストールで説明するコマンドラインツールを使用する必要があります。
通常、1024ビットオプションは許容レベルのセキュリティを提供します。より高いレベルを選択すると、最初の接続速度が低下します。512ビットオプションは、低レベルのセキュリティを提供します。
指示に従って、アプリケーションサーバに証明書を要求します(たとえば、VeriSign Webサイトhttp://digitalid.verisign.comを使用)。要求が承認されると、証明書認証局から新しい証明書がメールで送信されます。
CSRを生成した後、証明書発行者からCSRを取得する前にSilverMasterデータベースが破損された場合に備えて、プライベートキー情報をバックアップできます。プライベートキーを保存しても、証明書をインストールすることはできます。
ファイルのパスワードを入力します。このパスワードに管理者のパスワードを指定する必要はありません。プライベートキー情報を含むファイルに適用されるだけです。
証明書を(プライベートキーなしでまたはプライベートキーとともに)インストールする
[証明書のインストール]または[プライベートキーと共にインストール]を選択します。
[プライベートキーと共にインストール]を選択すると、メッセージボックスが表示され、この手順にHTTPSを使用するよう指示されます。
署名認証をテキスト領域に貼り付け、[完了]をクリックします。
[プライベートキーと共にインストール]を選択すると、プライベートキーを含むファイルおよびファイルに関連するパスワードを尋ねられます。
SMCを使用すると、DSRサーバ証明書を生成してインストールできます。
通常、1024ビットオプションは許容レベルのセキュリティを提供します。より高いレベルを選択すると、最初の接続速度が低下します。512ビットオプションは、低レベルのセキュリティを提供します。
アプリケーションサーバのディスパッチャ(クラスタリングで使用)にサーバ証明書を作成してインストールするには、次のコマンドラインユーティリティを使用する必要があります。
ユーティリティ |
説明 |
---|---|
AgDigitalIDStep1 |
次のうちいずれかを準備するために使用します。 |
AgDigitalIDStep2 |
発行者から送信された証明書情報およびデータ保護に使用されるプライベートキーの入力を求め、証明書をアプリケーションサーバに(プライベートキー情報なしで)インストールします。 |
次の節では、以下の項目について説明します。
クラスタ環境でアプリケーションサーバおよびクライアント間のHTTPS/SSLまたはTLS通信を有効にするには、アプリケーションサーバのディスパッチャにRSAまたはDSA証明書をインストールします。
証明書のタイプ |
コマンド |
---|---|
RSA証明書 |
AgDigitalIDStep1 |
DSA証明書 |
AgDigitalIDStep1 dsa |
ヒント: DSA証明書を生成する場合は、タイトルおよびヘルプテキストが多少異なり ます。
ヒント: UNIXでは、このユーティリティはGUIを使用して実行し、文字端末ウィンド ウでは実行できません。UNIXコンピュータにリモートでログインする場合は、DISPLAY 環境変数が適切に設定されていることを確認してください。
次のパネルが表示され、生成するキーペアのサイズを指定できます。
通常、1024ビットオプションは許容レベルのセキュリティを提供します。より高いレベルを選択すると、最初の接続速度が低下します。512ビットオプションは、低レベルのセキュリティを提供します。
「RSA証明書」の場合、パネルはCSRのパスおよびパスワードで保護されたプライベートキーを示します。
「DSA証明書」の場合、パネルは証明書のパスおよびプライベートキーファイルを示します。パスは編集できます。後で証明書をインストールする際に、この情報を使用します。
重要: プライベートキーを含むファイルは、物理的に安全に保護する必要があります。サーバ証明書を取得したユーザがサーバを装う可能性があります。
ウィザードがキープレスとマウス移動から暗号的に適切なキーを生成できるランダムな情報を収集できない場合、次のパネルが表示されます。
画面の指示に従って、編集ボックスにランダムな文字を入力し、マウスを移動させて暗号化されたプライベートキーを作成します。ウィザードにランダムな情報が十分あれば、[OK]ボタンが有効になります。
「RSA証明書」の場合、[ CSRをクリップボードへコピー]をクリックして、CSRのコンテンツをクリップボードにコピーし、次の手順で使用します。
「DSA証明書」の場合、[デジタルIDをクリップボードへコピー]をクリックして、証明書をインストールする際に使用します。
「RSA証明書」の場合、指示に従って、アプリケーションサーバに証明書を要求します(たとえば、VeriSign Webサイトhttp://digitalidverisign.comを使用)。要求が承認されると、証明書認証局から新しい証明書がメールで送信されます。
AgDigitalIDStep2を使用して証明書をインストールします。次の「AgDigitalIDStep2の使用」を参照してください。
CAからRSA証明書を受信、またはAgDigitalIDStep1を使用してDSA証明書を生成すると、AgDigitalIDStep2を使用して証明書をインストールできます。
AgDigitalIDStep2
パネルは、プライベートキー(RSAとDSA証明書では名前が異なるため、プライベートキーの名前を編集する必要があります)のパスを尋ね、パスワードの確認を指示します(DSAプライベートキーにはパスワードがありません)。
ディスパッチャの名前(サーバ名のテキストフィールド)およびHTTPポート番号を入力します。
異なるタイプの操作に個別のポートを設定している場合は、「管理」ポートを指定します。デフォルトでは、アプリケーションサーバはポート80をリッスンします。
再起動後、サーバが設定され、次のようにリッスンします。
詳細については、RSA/DSAポートの有効化および一般的なサーバのプロパティの指定を参照してください。
運用の準備ができたら、SMCを使用して認証を有効にします。認証の有効化を参照してください。
デフォルトでは、アプリケーションサーバは、RSAおよびDSA通信にポート443を指定します。3つの各セキュリティプロトコルのランタイムおよび管理アクセスのポートを有効にしたり、変更したりします。 3つのセキュリティプロトコルとは、HTTP、HTTPS-RSA、およびHTTPS-DSAを指します。サーバでは、異なるタイプのアクセスに対して固有なポート値を設定する必要はありません。同じ値を持つポートでは、同じソケットが共有され、複数の操作が許可されます。
詳細については、個別のポートの設定を参照してください。
[ポートの設定]の下の、タブの[ポートの設定]セクションで、いずれかのチェックボックスをオンにして、DSAまたはRSAの[ランタイム]または[管理]ポートを有効にします。
ヒント: サーバ証明書をインストールした後、ポートはサーバが再起動すると自動的に 有効になります。
詳細については、ディスパッチャ用サーバ証明書の作成とインストールを参照してください。
必要に応じて、[ランタイム]および/または[管理]ポートのRSAおよびDSAポート番号を変更します。
UNIXサーバで、サーバがルートアクセスで実行されていない場合は、1024より上のポート番号を指定します(1024より下のポート番号はルートアクセスに予約されています)。
暗号の詳細については、SSL暗号の制限を参照してください。
変更を有効にするには、[再起動](サーバ)をクリックします。
ポートが有効になると、Javaクライアントは、アプリケーションサーバにSSL接続を確立した際にサーバ証明書を検証します。
詳細については、JavaクライアントのSSLサーバ証明書の検証を参照してください。
HTTP通信をオフにして、HTTPSまたはRMIのみ使用する通信をクライアントに許可できます。
詳細については、ORB設定の指定を参照してください。
SMCの実行を防ぐポートを誤って無効にした場合(たとえば、すべての管理ポートを無効にした場合)、httpd.propsファイルを編集して管理ポートを再度有効にする必要があります。SMCを使用して、ランタイムポートを有効および無効にできます。
[HTTPポート]セクションで、[HTTPランタイムポートを有効にする](またはHTTP管理ポート)チェックボックスをオフにして、無効にします。
すべてのランタイムポートを無効にしても、サーバは実行されます。ランタイムポートを無効にするには、注意が必要です。HTTPランタイムポートを無効にすると、サーバは、DSAまたはRSAランタムポートが有効かどうかチェックします。HTTPランタイムポートの無効化を進めると、警告が表示されます。
変更を有効にするには、[再起動]ボタンをクリックします。詳細については、アプリケーションサーバの再起動を参照してください。
サーバはHTTPサーバポートでリッスンしなくなります。
アプリケーションサーバは、SSL (Secure Sockets Layer) 3.0およびTLS (Transport Layer Security) 1.0をサポートします。 TLS 1.0プロトコルはSSL 3.0プロトコルに基づいており、SSL 3.1として参照される場合もあります。
デフォルトでは、SSL 3.0およびTLS 1.0の両方が許可されます。
SSL接続が初期化されると、ブラウザクライアントおよびサーバは、キー交換および暗号化に使用される共通の暗号値を決定します。さまざまな暗号値が、異なるタイプの暗号化アルゴリズムおよびセキュリティレベルを提供します。アプリケーションサーバは、低、中、および高レベルの暗号化を提供することにより、一定の範囲のクライアントにサービスできるフルセットの暗号を備えています。
RSAおよびDSAランタイムポートでHTTPSに通信する際にサーバで使用する暗号化レベル(暗号値)を制限できます。これにより、低レベルセキュリティのクライアントからの接続を防ぎながら、高レベルの暗号化ができるサーバを持つことができます。
起動時に、アプリケーションサーバは許可された暗号のリストを読み込みます。 デフォルトにより有効にされた暗号のリストについては、SSL暗号の制限を参照してください。 SMCを使用すると、有効/無効な暗号を変更できます。選択された暗号のみが、適切なSSLソケットの初期化に使用されます。
[ランタイムポートを有効にする]チェックボックスをオンにして、安全なDSA(Javaクライアント)および/またはRSA(HTMLおよびJavaクライアント)通信を有効にします。
[暗号]をクリックし、表示されるパネルで暗号を選択または選択解除して、どの暗号が許可されるかを指定します(次の表を参照)。暗号を選択すると、パネルに説明が表示されます。
暗号表 次の表は、安全な通信(HTTPS)を使用するときにアプリケーションサーバにサポートされる暗号(およびセキュリティレベル)の一覧です。
* サーバの起動時に、デフォルトにより有効となる暗号
アプリケーションサーバは、クライアント証明書を検証するCA (認証局)のリストを管理します。これはサーバが信頼する保証人のリストを表します。サーバが最初に設定されるときにインストールされる共通のCAが3つあります。これらはVeriSign, IncのCAで、次の異なる信頼レベルを表します。クラス1は、信頼が最小の証明書を表します。クラス3は最高レベルの信頼を表します。
クライアント証明書を持つユーザがサーバにアクセスしようとすると、サーバはまずCAリストをチェックして、証明書が既知のパーティに承認されていることを検証してから、有効なタイムスタンプをチェックして、証明書の期限が切れていないことを検証します。検証完了後、サーバはクライアント証明レベルパラメータ(SMCを使用して設定できます。クライアント証明書のインストールと管理を参照)に従って接続要求を処理します。
アプリケーションサーバは、認識されないクライアント証明書からもCAを抽出できます。詳細については、クライアント証明書のインストールと管理を参照してください。
このタブは各CAに関する情報を含み、新しいCAを追加して広範囲のクライアントを信頼させたり、CAを削除してサーバのセキュリティレベルを強化したりできます。
CAを追加するには、[認証局の追加]をクリックして、ファイルを選択します。CAを削除するには、対象のCAを選択して[認証局の削除]をクリックします。
HTTPS環境で、クライアント証明書は、サーバとの通信時にユーザIDを確立します。クライアント証明書はさまざまなソースから取得できますが、有益にするにはサーバから信頼されている保証人(認証局、CA)が証明書に署名する必要があります。
アプリケーションサーバは、RSA暗号化を使用する標準インターネットブラウザ(NetscapeおよびInternet Explorerを含む)のクライアント証明書およびX.509証明書(多くの証明書発行者に使用される証明書インタフェースの特別な実装)をサポートします。
クライアント証明書とEJB RSA暗号化を使用するクライアント証明書は、SSL環境でユーザIDを作成する場合にも使用されます(EJBによって使用)。HTTPS環境の場合と同様に、サーバは標準インターネットブラウザのクライアント証明書をサポートします。新しいCAをサーバに追加する必要がある場合は、CA証明書をインストールまたは削除するを参照してください。
SMCを使用して、有効なクライアント証明書を持つユーザの接続試行をサーバがどのように処理するか、決定できます。各々が異なるレベルの制限を表す7つのパラメータオプションを使用できます。オプションのうち2つは、サーバに検証された新しい証明書を自動的にインストールし、Certificate Securityレルムの新しいユーザとしてデータベースに追加します。証明書は手動でもインストールできます(クライアント証明書の手動インストールを参照してください)。
HTTPSポートの各セット(HTTPS-RSA HTTPS-DSA)は、関連する単一の暗号を持ちます。選択する暗号はそのタイプのすべてのポート(ランタイムおよび管理)に適用されます。
注記: SMCは、有効な証明書を伴わないHTTPSポートの有効化を許可しません。最初に証明書をインストールせずにHTTPSポートを有効にしようとすると(SMCを使用するかpropsファイルを編集することによって)、起動時にサーバエラーが表示されます。httpd.propsファイルを参照してください。
HTTPSポートの各セット(HTTPS-RSA HTTPS-DSA)は、関連する単一の暗号を持ちます。選択する暗号は、プロトコルタイプ内のすべてのポート(ランタイムおよび管理)に適用されますが、各ポートを異なる値に設定できます。
重要: 最初にHTTPS-RSAまたはHTTPS-DSAサーバ証明書をインストールすることなくHTTPSポートを有効にすることはできません。最初に証明書をインストールせずにHTTPSポートを有効にしようとすると(SMCを使用するかpropsファイルを編集することによって)、起動時にサーバエラーが表示されます。
[HTTPSクライアント証明書レベル]とラベルのついたドロップダウンリストからオプションを選択して、[更新]をクリックします。
レベル0から他のレベルに変更した場合に限り、サーバを再起動する必要があります。
選択内容は、すべての有効なクライアント証明書をサーバがどのように処理するかを決定します。次の証明書検証表で各オプションを説明します。オプションには、0 (検証なし)から6(最も制限の厳しいレベル)の番号が付いています。
前の節では、新しく検証された証明書をサーバのデータベースに自動的に追加するパラメータオプションについて説明しました。ただし、証明書を個別にインストールしたい場合もあります。この節では、クライアント証明書をデータベースに手動で追加する方法について説明します。クライアントコンピュータ用とサーバ用の2つの手順で構成されます。
クライアント証明書をインストールする - クライアントコンピュータ
注記: この手順を機能させるには、サーバの証明書検証レベルを1、2、または4に設定する必要があります(証明書検証表を参照してください)。
https://server/SilverStream/Meta/Certificates?action=data
クライアント証明書をインストールする - サーバコンピュータ
前の手順(クライアント証明書をインストールする - クライアントコンピュータ)でクライアントにより取得されたファイル名を入力して、[完了]をクリックします。
アプリケーションサーバは、CAがサーバにインストールされていない場合、クライアント証明書からCAを抽出できます。この節は、クライアントコンピュータ用とサーバ用の2つの手順で構成されます。
注記: この手順を機能させるには、サーバの証明書検証レベルを1または2に設定する必要があります(証明書検証表を参照してください)。
https://server/SilverStream/Meta/Certificates?action=dataCA
証明書ユーザは、Certificate Securityと呼ばれるセキュリティレルムに追加されます。領域は、アプリケーションサーバでサポートされるユーザおよびグループのリストに含められます。
このパネルを使用して、現在のユーザを表示またはユーザをグループに追加します。
ユーザおよびグループの詳細については、ユーザおよびグループのセットアップを参照してください。
他のSilver Securityユーザを使用する場合と同様に、証明書ユーザをセキュリティ式で使用できます。セキュリティ式の詳細については、認証とアクセス制御を参照してください。
X.509証明書は、開始日および終了日を含みます。クライアントは、有効期限の切れた証明書でのサーバ接続を許可されません。新しい証明書を取得して、アプリケーションサーバに既知のユーザに割り当てることで、確立されたCertificate Securityユーザを表す証明書を更新できます。これにより、既存ユーザに関するセキュリティ式が引き続き正しく機能できるようになります。
通常、既存の証明書ユーザは、クライアント証明書の手動インストールで説明したURLを使用して、更新された証明書をサーバに提示します。
注記: 前に説明した自動インストールパラメータ(レベル2または3)のいずれかでサーバを実行しており、既存のクライアント証明書ホルダがサーバの検証した新しい(更新された)証明書でサーバにアクセスしようとする場合、クライアントは新しいユーザとしてインストールされます。クライアントは、前のユーザが使用できたリソースを制限されます。
タブが3つあるフォームが表示されます。[一般]タブには、ユーザに関する一般情報が表示されます。[追加属性]タブには、証明書に関する情報が表示されます。[更新]タブでは、選択したユーザの証明書を更新できます。
Javaクライアントは、アプリケーションサーバへのSSL接続が確立されると、信頼するCA証明書リスト(agrootca.jarファイルに保存)に対してサーバ証明書を検証します。証明書が検証できない場合、SSL接続は確立できません。
SSL通信を使用するには、次のサーバ証明書のいずれかがアプリケーションサーバにインストールされている必要があります。
証明書 |
詳細 |
---|---|
証明書サービスを提供する外部企業(VeriSignなど)から購入したRSA証明書 |
SMCまたはコマンドラインツール(AgDigitalIDStep1)を使用して、RSA CSR (Certificate Signing Request)を生成します。暗号化されたCSRファイルは、アプリケーションサーバを実行する組織を識別して署名証明書を作成する外部CAに送信されます。外部CAおよびRSA暗号化を使用する場合は、agrootca.jarファイルを使用した証明書の検証を参照してください。 |
自己生成RSA証明書(Netscape Certificate Serverなどの内部組織ツールを使用して、ユーザ自身がCAとなります)。 |
独自の証明書を生成する場合、agrootca.jarファイルを配布する必要があります(agrootca.jarファイルを使用した証明書の検証を参照)。 |
SMCを使用して作成された自己署名DSA証明書 |
自己署名DSAサーバ証明書を使用する組織は、コマンドラインオプションを使用してください(自己署名DSAサーバ証明書のコマンドラインオプションを参照)。 |
クライアントは、agrootca.jarファイルに保存された信頼するCA証明書のリストに対して、アプリケーションサーバの証明書を検証します。起動時、クライアントはCAリストを読み取り、agrootca.jarファイルのコンテンツに対してすべてのサーバ証明書をチェックし、証明書が署名されていることを検証します。
agrootca.jarファイルにはすべての信頼するルートCAを含め、信頼性のないCAは削除してください。クライアントは、JARファイルのルートCA証明書により署名されたサーバ証明書のみを信頼します。
Netscape Certificate Serverなどのツールを使用して独自のRSA証明書を生成する場合、Certificate ServerのCA証明書をagrootca.jarファイルに配置して、SilverJ2EEClientを実行する各クライアントコンピュータにJARファイルを配布してください。agrootca.jarファイルは、SilverJ2EEClientのCommon\libディレクトリに保存する必要があります。
注記: agrootca.jarファイルは、ユーザコードがSSLを使用して他のサーバに接続しようとする場合(サーブレットの場合など)にのみ、アプリケーションサーバにより使用されます。
簡素化されたセキュアポート設定 アプリケーションサーバのRSAポートを使用して、サーバとJavaクライアント、HTMLクライアント、およびEJB間に安全な通信を提供できます。
組織が自己署名DSA証明書を使用してアプリケーションサーバおよびクライアント間にデータ暗号化を提供する場合、SilverJ2EEClientの実行には+Dsssw.ssl.nocacheckコマンドラインオプションを使用してください。このオプションは、クライアントによる証明書認証局の検証を防ぎます。例:
SilverJ2EEClient +Dsssw.ssl.nocacheck server database warfile
ユーザ認証を要求して関連設定を有効にできます。HTTPユーザ/パスワード保護およびHTTPS-RSAクライアント証明書の認証を要求するアプリケーションの展開が準備できたら、認証設定を設定します。
詳細については、個別のポートの設定を参照してください。
項目 |
説明 |
---|---|
ユーザの認証を必須にする |
ユーザが初めてサーバにアクセスしたときに、証明書またはユーザ名/パスワードによる認証を必要とします。認証されたら、ユーザはセッション中に再び認証される必要はありません。 このオプションを設定すると、Anonymousユーザは禁止されます。設定しない場合、ユーザはログインしたり、証明書を送信することなくサーバにアクセスでき、Anonymousユーザと呼ばれます。 HTTPSでこのオプションを使用する場合は、[HTTPSクライアント証明書レベル]を有効にします。 ログインはオブジェクト単位で要求することもできます。アクセスの変更を参照してください。 |
HTMLディレクトリのリスト表示を無効にする |
ブラウザがディレクトリのURLをポイントすると、ブラウザのサーバディレクトリコンテンツのリスト表示を無効にします。ユーザにディレクトリコンテンツを見られないようにします。このオプションをオンにすると、サーバはFORBIDDENエラーを返します。 |
ユーザに自分のアカウントの変更を許可する |
デフォルトでは、ユーザは、自分のユーザプロパティを変更できます。チェックボックスをオフにして、この権限を無効にできます。権限をオフにすると、管理者(サーバ環境設定の読み込みおよびサーバ環境設定の変更許可を持つユーザ)のみがユーザプロパティを変更できます。
|
セキュリティリソースタイムアウト |
アプリケーションサーバがNT、LDAP、またはNIS+サーバ、あるいはこれらすべてから、リストの更新を含む現在のユーザおよびグループリストをアップロードする頻度を指定します。
|
CHI (Cryptographic Hardware Integration)は、アプリケーションサーバおよびサポートされるハードウェアアクセラレータカードのあるコンピュータで、アプリケーションサーバSSL暗号化/解読パフォーマンスを向上させることができます。
サポートされるカードについては、アプリケーションサーバのリリースノートを参照してください。
CHIを使用するには、次の操作を実行する必要があります。
アプリケーションサーバがインストールされているコンピュータに、サポートされるハードウェアアクセラレータカードをインストールします。
CHIをコンピュータにインストールします(次のCHIをインストールするを参照)。
SMCを使用してサーバを設定します(次のハードウェアアクセラレータカードを使用できるようにアプリケーションサーバを設定するを参照)。
CHIは後で個別にインストールすることもできます。
ハードウェアアクセラレータカードを使用できるようにアプリケーションサーバを設定する
SMCを使用すると、EJBコールで指定IDを受信する際にアプリケーションサーバによって信頼されるクライアントのリストを設定できます。これは、スタンドアロンサーバではサーバレベルのプロパティです。クラスタで実行されるサーバでは、クラスタレベルのプロパティです。単一サーバに設定された信頼するクライアントは、クラスタのすべてのサーバに伝えられます。
たとえば、エントリにはアスタリスクワイルドカード文字(*)を含めることができます。
*.mydomain.com
server*.mydomain.com
*
アスタリスクを使用する場合は、URLセクションの最後の文字である必要があります。セクションでアスタリスクの後に続く文字は、すべて無視されます。前の例で、server*がserver*1の場合、1はリストに含まれません。
このセクションでは、FIPS (Federal Information Processing Standards)モードで実行するようにアプリケーションサーバを設定する方法について説明します。 アプリケーションサーバは、デフォルトによりFIPSの対応が可能となっています。 アプリケーションサーバ、ディスパッチャ、およびクライアント接続(アプリケーションサーバー、SMC、あるいはSilverJ2EEClientからのアウトバウンド接続を含みます)でFIPSを有効にするためには、次の手順に従う必要があります。
注記: Silver SecurityはFIPSに準拠していません。 FIPSに準拠させるためには、ユーザおよびパスワードの管理用にLDAPまたはその他のユーザ登録メカニズムを使用する必要があります。
FIPS認証モードで実行するようアプリケーションサーバを設定する
SMCを使用してSSL 3.0を無効にし、 TLS 1.0を有効にします。
詳細については、次の項目を参照してください。 SSL 3.0とTLS 1.0の許可
SMCを使用して、次のものを除くすべての暗号を無効にします。
詳細については、次の項目を参照してください。 SSL暗号の制限
FIPS認証モードでSilverCmd、SilverJ2EEClient、およびSMCを実行する
SSL 3.0を無効にするには、ファイルにアンコメント行が含まれていることを確認してください。
NOSSL3
TLSを有効にするには、NOTLS1コマンドが削除されているか、次のようにコメントされていることを確認してください。
#NOTLS1
環境設定ファイルの詳細については、暗号環境設定ファイルについてを参照してください。
または
起動時に、-ciphersuitesコマンドラインオプションを使用して独自の環境設定ファイルを指定します。
環境設定ファイルの詳細については、暗号環境設定ファイルについてを参照してください。
SunのJSSEおよびJCE実装は、FIPSで認証されていません。 展開済みアプリケーションでこれらを使用すると、サーバが対応できなくなる可能性があります。
アプリケーションでURLまたはURLConnectionを使用している場合は、準拠しています。 URLStreamHandlerFactoryでは、Phaos Cryptoモジュールに基づくPhaos SSLavaを使用します。 ただし、他の実装に対してURL.setURLStreamHandlerFactory()を呼び出すと、非準拠となります。
暗号環境設定ファイルはJavaプロパティファイルです。 正しいエントリは次のとおりです。
暗号名は、priority#に従って降順に分類されます。 priority#が指定されていない場合、暗号の優先度は最も低くなります。
アプリケーションは、すべての暗号のエイリアスをサポートしているわけではありません (サポートされている暗号のリストについては、SSL暗号の制限を参照してください)。 暗号環境設定ファイルは、Common/libフォルダまたはJARファイルにあります。
Copyright © 2004 Novell, Inc. All rights reserved. Copyright © 1997, 1998, 1999, 2000, 2001, 2002, 2003 SilverStream Software, LLC. All rights reserved. more ...