Doručování certifikátů TLS/SSL do Apache Tomcat pomocí služby Azure Key Vault

Tento článek popisuje, jak integrovat Azure Key Vault do Apache Tomcat k doručování certifikátů TLS/SSL.

Ujistěte se, že JVM má přístup k certifikátům TLS/SSL.

Ujistěte se, že jste postupovali podle všech kroků uvedených v tématu Použití služby Azure Key Vault k doručování certifikátů TLS/SSL do prostředí JVM.

Přidání konfigurace PROTOKOLU TLS/SSL do server.xml

Do souboru server.xml v Tomcat přidejte následující konfiguraci. Nezapomeňte nahradit zástupný symbol <your-certificate> názvem certifikátu ve službě Azure Key Vault, který chcete použít pro protokol TLS/SSL na straně serveru.

<Connector port="8443"
           protocol="org.apache.coyote.http11.Http11NioProtocol"
           maxThreads="150"
           SSLEnabled="true">
    <SSLHostConfig>
        <Certificate
            certificateKeyAlias="<your-certificate>"
            certificateKeystoreFile=""
            certificateKeystorePassword=""
            certificateKeystoreType="DKS"
            certificateKeystoreProvider="AzureKeyVault" />
    </SSLHostConfig>
</Connector>

Nastavení požadovaných vlastností spuštění

Před spuštěním tomcat použijte proměnné prostředí JAVA_OPTS a CLASSPATH k nastavení prostředí. Jedním ze způsobů, jak určit proměnné prostředí, je vytvoření setenv.sh nebo setenv.bat skriptu v adresáři tomcat bin.

Poznámka

K nastavení proměnných prostředí můžete použít také jiné přístupy. Testovali jsme spuštěním skriptu tomcat catalina.sh nebo catalina.bat skriptu a spuštěním služby Tomcat pro Windows.

export JAVA_OPTS="-Djava.security.properties==/xxx/my.java.security"
export CLASSPATH="/xxx/azure-security-keyvault-jca.jar"

Následující příklad JAVA_OPTS zahrnuje místní testování pomocí služebního principálu:

export JAVA_OPTS='-Djava.security.properties==/xxx/my.java.security -Dazure.keyvault.uri=xxx -Dazure.keyvault.client-id=xxx -Dazure.keyvault.client-secret=xxx -Dazure.keyvault.tenant-id=xxx'

Tento příklad se zabývá cloudovými nasazeními pomocí spravované identity přiřazené uživatelem:

export JAVA_OPTS='-Djava.security.properties==/xxx/my.java.security -Dazure.keyvault.uri=xxx -Dazure.keyvault.managed-identity=<your-managed-identity>'

Tento příklad se zabývá cloudovými nasazeními pomocí spravované identity přiřazené systémem:

export JAVA_OPTS='-Djava.security.properties==/xxx/my.java.security -Dazure.keyvault.uri=xxx'

Význam každé z těchto vlastností najdete v tématu Použití služby Azure Key Vault k doručování certifikátů TLS/SSL do prostředí JVM.

Další kroky