Kerberos 5 GSS-APIメカニズム

この項では、Kerberos 5用Java Generic Security Services (Java GSS)に関するセキュリティ機能について説明し、一覧表示します。Kerberos V5メカニズムのオブジェクト識別子(OID)、暗号化タイプ、およびJava GSSでサポートされるkrb5.conf設定についても説明します。

Generic Security Services Application Program Interface (GSS-API)メカニズムはRFC-1964によって定義され、インターネット標準プロセスの下に、RFC4121で補足されています。

Kerberos V5メカニズムのOID

RFC 1964のセクション1に従い、Kerberos5のJava Generic Security Services (Java GSS)のOIDは1.2.840.113554.1.2.2と定義されます。Javaセキュリティ標準アルゴリズム名GSSAPIメカニズムも参照してください。

Java GSS/Kerberosでサポートされる暗号化タイプ

次の表に、Java GSS/Kerberosでサポートされる暗号化タイプの優先順位を示します。

表7-1 Java GSS/Kerberosでサポートされる暗号化タイプ

名前 別名 etype番号
aes256-cts-hmac-sha1-96 aes256-sha1、aes256-cts 18
aes128-cts-hmac-sha1-96 aes128-sha1、aes128-cts 17
aes256-cts-hmac-sha384-192 aes256-sha2 20
aes128-cts-hmac-sha256-128 aes128-sha2 19
des3-cbc-sha1 des3-hmac-sha1 16
arcfour-hmac-md5 arcfour-hmac、rc4-hmac 23
des-cbc-crc なし 1
des-cbc-md5 なし 3

ノート:

AES-128およびAES-256暗号化タイプはデフォルトで有効になっています。次のレガシー暗号化タイプはデフォルトで無効になっています:

  • DESベースの暗号化タイプ(des-cbc-crcやdec-cbc-md5など)
  • DES3ベースの暗号化タイプ、des3-cbc-sha1
  • RC4ベースの暗号化タイプ、arcfour-hmac-md5 (別名rc4-hmac)

これらの無効な暗号化タイプのいずれかを使用する場合は、Kerberos構成ファイルで、パラメータallow_weak_crpytotrueに設定し、その暗号化タイプをパラメータdefault_tkt_enctypesdefault_tgs_enctypesおよびpermitted_enctypesに指定する必要があります。

サポートされるkrb5.conf設定

次のパラメータがサポートされています。ユーザーは様々な目的で、krb5.conf[libdefaults]セクションで暗号化の使用を制限できます。

include FILENAME
includedir DIRNAME

[libdefaults]
allow_weak_crypto
canonicalize
clockskew
default_keytab_name
default_realm
default_tgs_enctypes
default_tkt_enctypes
dns_canonicalize_hostname
dns_fallback
dns_lookup_kdc
dns_lookup_realm
extra_addresses
forwardable
kdc_default_options
kdc_timeout
max_retries
no_addresses
noaddresses
permitted_enctypes
proxiable
renew_lifetime
renewable
ticket_lifetime
udp_preference_limit
 
[realms]
  REALM.NAME = {
      kdc
      kdc_timeout
      udp_preference_limit
      max_retries
  }
 
[capaths]
  A = {
    I = .
    B = I
  }
 
[domain_realm]
  domain=REALM

次は、krb5.confファイル・パラメータのデフォルト値です:

表7-2 krb5.confファイル・パラメータのデフォルト値

パラメータ デフォルト値
allow_weak_crypto false
canonicalize false
clockskew 300
default_tgs_enctypes 許可される暗号化タイプの値
default_tkt_enctypes 許可される暗号化タイプの値
dns_canonicalize_hostname true
dns_lookup_kdc true
dns_lookup_realm false
forwardable false
kdc_timeout 30s
max_retries 3
no_addresses true
noaddresses true
permitted_enctypes デフォルトで有効な暗号化タイプ(AES-128およびAES-256)。表7-1を参照してください
proxiable false
renewable false
udp_preference_limit 1465

krb5.confファイルが見つからないか、krb5.confファイルに設定が存在しない場合は、これらのデフォルト値が使用されます。たとえば、dns_lookup_kdcのデフォルト値はtrueであるため、KDCの詳細をフェッチするためにDNSルックアップが実行されます。