TLS 証明書 - Amazon EMR

TLS 証明書

Amazon EMR と Apache Ranger を統合するには、Amazon EMR ノードから Ranger 管理サーバーへのトラフィックが TLS を使用して暗号化され、Ranger プラグインが双方向相互 TLS 認証を使用して Apache Ranger サーバーに対して認証する必要があります。Amazon EMR サービスには、Ranger 管理サーバーのパブリック証明書 (前の例で指定) とプライベート証明書が必要です。

Apache Ranger プラグイン証明書

Apache Ranger プラグインパブリック TLS 証明書は、プラグインの接続時に検証するために Apache Ranger 管理サーバーからアクセスできる必要があります。これを行うには、3 つの方法があります。

方法 1: Apache Ranger 管理サーバーでトラストストアを設定する

ranger-admin-site.xml に次の設定を入力して、トラストストアを設定します。

<property> <name>ranger.truststore.file</name> <value><LOCATION TO TRUSTSTORE></value> </property> <property> <name>ranger.truststore.password</name> <value><PASSWORD FOR TRUSTSTORE></value> </property>

方法 2: Java cacerts トラストストアに証明書をロードする

Ranger 管理サーバーが JVM オプションでトラストストアを指定していない場合は、プラグインのパブリック証明書をデフォルトの cacerts ストアに配置できます。

方法 3: トラストストアを作成し、JVM オプションの一部として指定する

{RANGER_HOME_DIRECTORY}/ews/ranger-admin-services.sh 内で JAVA_OPTS を変更して "-Djavax.net.ssl.trustStore=<TRUSTSTORE_LOCATION>" および "-Djavax.net.ssl.trustStorePassword=<TRUSTSTORE_PASSWORD>" を含めます。例えば、既存の JAVA_OPTS の後に次の行を追加します。

JAVA_OPTS=" ${JAVA_OPTS} -Djavax.net.ssl.trustStore=${RANGER_HOME}/truststore/truststore.jck -Djavax.net.ssl.trustStorePassword=changeit"
注記

この指定では、ユーザーが Apache Ranger 管理サーバーにログインし、ps コマンドの使用など、実行中のプロセスを確認できる場合、トラストストアのパスワードが公開されることがあります。

自己署名証明書の使用

自己署名証明書は、証明書としては推奨されません。自己署名証明書は失効できず、自己署名証明書は内部セキュリティ要件に準拠していない可能性があります。