この付録では、Kerberos、RADIUSまたはSSL認証を使用する場合のプロファイル・ファイル(sqlnet.ora
)とデータベース初期化ファイルの認証パラメータによるサンプル構成ファイルについて説明します。
この付録のトピックは次のとおりです。
Kerberosを使用するクライアントとサーバーの構成ファイルに挿入するパラメータのリストを次に示します。
表B-1 Kerberos認証パラメータ
ファイル名 | 構成パラメータ |
---|---|
|
SQLNET.AUTHENTICATION_SERVICES=(KERBEROS5) SQLNET.AUTHENTICATION_KERBEROS5_SERVICE=oracle SQLNET.KERBEROS5_CC_NAME=/usr/tmp/DCE-CC SQLNET.KERBEROS5_CLOCKSKEW=1200 SQLNET.KERBEROS5_CONF=/krb5/krb.conf SQLNET.KERBEROS5_CONF_MIT=(FALSE) SQLNET.KERBEROS5_REALMS=/krb5/krb.realms SQLNET.KERBEROS5_KEYTAB=/krb5/v5sLrvtab SQLNET.FALLBACK_AUTHENTICATION=FALSE |
|
OS_AUTHENT_PREFIX="" |
次の各項では、RADIUS認証のパラメータについて説明します。
次の各項では、RADIUS認証の指定に使用するsqlnet.ora
パラメータについて説明します。
このパラメータでは、RADIUSアダプタを使用するようにクライアントまたはサーバーを構成します。表B-2に、このパラメータの属性を示します。
このパラメータでは、プライマリRADIUSサーバーの場所(ホスト名またはドット区切りの10進形式)を構成します。RADIUSサーバーがOracleサーバーとは異なるコンピュータ上にある場合は、そのコンピュータのホスト名またはIPアドレスを指定する必要があります。表B-3に、このパラメータの属性を示します。
このパラメータでは、プライマリRADIUSサーバーのリスニング・ポートを設定します。表B-4に、このパラメータの属性を示します。
このパラメータでは、認証情報を再送信する回数を設定します。表B-6に、このパラメータの属性を示します。
このパラメータでは、アカウンティングのオンとオフを切り替えます。アカウンティングを有効にした場合、パケットは、1を加えたリスニング・ポートでアクティブなRADIUSサーバーに送信されます。デフォルトでは、パケットはポート1646に送信されます。この機能は、RADIUSサーバーでアカウンティングがサポートされ、ユーザーがシステムにログオンする回数を追跡する場合にのみオンにする必要があります。表B-7に、このパラメータの属性を示します。
このパラメータでは、プライマリ・サーバーをフォルト・トレランスに使用できなくなった場合に使用する代替RADIUSサーバーの場所を設定します。表B-9に、このパラメータの属性を示します。
このパラメータでは、代替RADIUSサーバーのリスニング・ポートを設定します。表B-10に、このパラメータの属性を示します。
このパラメータでは、代替RADIUSサーバーの応答を待機する時間を設定します。表B-11に、このパラメータの属性を示します。
このパラメータでは、代替RADIUSサーバーでメッセージを再送信する回数を設定します。表B-12に、このパラメータの属性を示します。
このパラメータでは、チャレンジ・レスポンス(非同期)モードのオンとオフを切り替えます。表B-13に、このパラメータの属性を示します。
このパラメータでは、RADIUSサーバーからのチャレンジを要求するためのキーワードを設定します。ユーザーはクライアントでパスワードを入力しません。表B-14に、このパラメータの属性を示します。
このパラメータでは、RADIUSがチャレンジ・レスポンス(非同期)モードの場合に、グラフィカル・ユーザー・インタフェースを含むJavaクラスの名前を設定します。表B-15に、このパラメータの属性を示します。
チャレンジ・レスポンス認証モードを使用する場合、RADIUSは、最初にパスワード、続いて追加情報(トークン・カードから取得する動的パスワードなど)を要求するJavaベースのグラフィカル・ユーザー・インタフェースをユーザーに表示します。sqlnet.ora
ファイルにSQLNET.RADIUS_CLASSPATH
パラメータを追加して、そのグラフィカル・インタフェースのJavaクラスを設定し、JDK Javaライブラリへのパスを設定します。表B-16に、このパラメータの属性を示します。
sqlnet.authentication_services = (radius) sqlnet.radius.authentication = IP-address-of-RADIUS-server
OS_AUTHENT_PREFIX=""
パラメータの構成方法は2つあります。
静的: sqlnet.ora
ファイルに存在するパラメータの名前。SSL_CIPHER_SUITES
やSSL_VERSION
などのパラメータは、listener.ora
ファイルを使用して構成することもできます。
動的: Oracle Netアドレスのセキュリティ・サブセクションで使用されるパラメータの名前。
この項では、サーバーでSSLを構成するための静的パラメータと動的パラメータについて説明します。
属性 | 説明 |
---|---|
パラメータ名(静的) | SQLNET.AUTHENTICATION_SERVICES |
パラメータ名(動的) | AUTHENTICATION |
パラメータ・タイプ | 文字列LIST |
パラメータ・クラス | 静的 |
設定できる値 | 使用可能な認証サービスのリストにTCPSを追加します。 |
デフォルト値 | デフォルト値はありません。 |
説明 | ユーザーが使用する認証サービスを制御します。
注意: 動的バージョンでは、1つのタイプの設定のみがサポートされます。 |
既存/新規パラメータ |
既存 |
構文(静的) | SQLNET.AUTHENTICATION_SERVICES = (TCPS, selected_method_1, selected_method_2) |
例(静的) | SQLNET.AUTHENTICATION_SERVICES = (TCPS, radius) |
構文(動的) | AUTHENTICATION = string |
例(動的) |
AUTHENTICATION = (TCPS) |
この項では、暗号スイートを構成するための静的パラメータと動的パラメータについて説明します。
属性 | 説明 |
---|---|
パラメータ名(静的) | SSL_CIPHER_SUITES |
パラメータ名(動的) | SSL_CIPHER_SUITES |
パラメータ・タイプ | 文字列LIST |
パラメータ・クラス | 静的 |
設定できる値 | 既知のSSL暗号スイート |
デフォルト値 | デフォルトなし |
説明 | SSLで使用する暗号化とデータ整合性の組合せを制御します。 |
既存/新規パラメータ | 既存 |
構文(静的) | SSL_CIPHER_SUITES=(SSL_cipher_suite1[, SSL_cipher_suite2, ... SSL_cipher_suiteN]) |
例(静的) | SSL_CIPHER_SUITES=(SSL_DH_DSS_WITH_DES_CBC_SHA) |
構文(動的) | SSL_CIPHER_SUITES=(SSL_cipher_suite1
[, SSL_cipher_suite2, ...SSL_cipher_suiteN]) |
例(動的) | SSL_CIPHER_SUITES=(SSL_DH_DSS_WITH_DES_CBC_SHA) |
この項では、使用するSSLのバージョンを構成するための静的パラメータと動的パラメータについて説明します。
属性 | 説明 |
---|---|
パラメータ名(静的) | SSL_VERSION |
パラメータ名(動的) | SSL_VERSION |
パラメータ・タイプ | 文字列 |
パラメータ・クラス | 静的 |
設定できる値 | SSLで有効なバージョン。値は次のとおりです。
あるバージョンまたは別のバージョンを指定する場合は、"or"を使用します。次の値を使用できます。
|
デフォルト値 | "0" |
説明 | SSL接続のバージョンを強制します。 |
既存/新規パラメータ | 新規 |
構文(静的) | SSL_VERSION=version |
例(静的) | SSL_VERSION=1.0 or 3.0 |
構文(動的) | SSL_VERSION=version |
例(動的) | SSL_VERSION=3.0 |
この項では、クライアントでSSLを構成するための静的パラメータと動的パラメータについて説明します。
属性 | 説明 |
---|---|
パラメータ名(静的) | SSL_CLIENT_AUTHENTICATION |
パラメータ名(動的) | SSL_CLIENT_AUTHENTICATION |
パラメータ・タイプ | ブール |
パラメータ・クラス | 静的 |
設定できる値 | TRUE/FALSE |
デフォルト値 | TRUE |
説明 | クライアント(サーバーに加えて)をSSLを使用して認証するかどうかを制御します。 |
既存/新規パラメータ | 新規 |
構文(静的) | SSL_CLIENT_AUTHENTICATION={TRUE | FALSE} |
例(静的) | SSL_CLIENT_AUTHENTICATION=FALSE |
構文(動的) | SSL_CLIENT_AUTHENTICATION={TRUE | FALSE} |
例(動的) | SSL_CLIENT_AUTHENTICATION=FALSE |
この項では、クライアントの接続先サーバーの識別情報を検証するために使用されるパラメータについて説明します。
属性 | 説明 |
---|---|
パラメータ名 | SSL_SERVER_DN_MATCH |
格納場所 | sqlnet.ora |
用途 | このパラメータを使用して、サーバーの識別名(DN)とそのサービス名の一致を強制します。一致確認を強制する場合は、SSLによって証明書がサーバーからのものであることが保証されます。一致確認を強制しない場合、SSLによるチェックは実行されるものの、一致しているかどうかに関係なく接続は許可されます。一致を強制しないと、サーバーの識別情報の偽装が可能になります。 |
値 | yes|on|true 。一致を強制します。DNとサービス名が一致した場合、接続は正しく行われ、それ以外の場合、接続は失敗します。
|
デフォルト | Oracle8i以上: FALSE。SSLクライアントは(常に)サーバーDNをチェックします。サービス名と一致していない場合、接続は成功しますが、エラーがsqlnet.log ファイルに記録されます。 |
使用上の注意 | さらに、tnsnames.ora のパラメータSSL_SERVER_CERT_DN もサーバーDNの一致を有効にするように構成します。 |
属性 | 説明 |
---|---|
パラメータ名 | SSL_SERVER_CERT_DN |
格納場所 | tnsnames.ora 。接続先のサーバーごとにクライアントに格納するか、接続先のサーバーごとにLDAPディレクトリに格納し、一元的に更新できます。 |
用途 | このパラメータでは、サーバーの識別名(DN)を指定します。クライアントは、サーバーのDNとそのサービス名が確実に一致するように、この情報を使用して、各サーバーに予定しているDNのリストを取得します。 |
値 | サーバーの識別名(DN)と等しい値を指定します。 |
デフォルト | n/a |
使用上の注意 | さらに、sqlnet.ora のパラメータSSL_SERVER_DN_MATCH もサーバーDNの一致を有効にするように構成します。 |
例 | dbalias=(description=address_list=(address=(protocol=tcps)(host=hostname)(port=portnum)))(connect_data=(sid=Finance))(security=(SSL_SERVER_CERT_DN="CN=Finance,CN=OracleContext,C=US,O=Acme")) |
セキュリティ資格証明をプロセス領域にロードするためにウォレットにアクセスする必要があるアプリケーションでは、次の各構成ファイルで表B-17に示すウォレット・ロケーション・パラメータを指定する必要があります。
sqlnet.ora
listener.ora
表B-17 ウォレット・ロケーション・パラメータ
静的構成 | 動的構成 |
---|---|
|
|
デフォルトのウォレット・ロケーションはORACLE_HOME
ディレクトリです。