Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье описывается, как интегрировать Azure Key Vault в Apache Tomcat для доставки TLS/SSL-сертификатов.
Убедитесь, что JVM может получить доступ к SSL-сертификатам TLS/SSL
Убедитесь, что вы выполнили все действия, описанные в статье Использование Azure Key Vault для доставки TLS/SSL-сертификатов вJVM.
Добавление конфигурации TLS/SSL в server.xml
Добавьте следующую конфигурацию в файл server.xml в Tomcat. Обязательно замените заполнитель <your-certificate> именем сертификата в Azure Key Vault, который вы хотите использовать для TLS/SSL на стороне сервера.
<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>
Установите необходимые свойства запуска
Используйте переменные среды JAVA_OPTS и CLASSPATH для настройки среды перед запуском Tomcat. Одним из способов указания переменных среды является создание скрипта setenv.sh или setenv.bat в каталоге bin Tomcat.
Заметка
Вы также можете использовать другие подходы для задания переменных среды. Мы проводили тестирование, запуская скрипт catalina.sh Tomcat или скрипт catalina.bat, а также запуская службу Windows для Tomcat.
export JAVA_OPTS="-Djava.security.properties==/xxx/my.java.security"
export CLASSPATH="/xxx/azure-security-keyvault-jca.jar"
В следующем примере JAVA_OPTS рассматривается локальное тестирование с использованием служебного принципала:
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'
В этом примере рассматриваются облачные развертывания с помощью управляемого удостоверения, назначаемого пользователем:
export JAVA_OPTS='-Djava.security.properties==/xxx/my.java.security -Dazure.keyvault.uri=xxx -Dazure.keyvault.managed-identity=<your-managed-identity>'
В этом примере рассматриваются облачные развертывания с помощью управляемого удостоверения, назначаемого системой:
export JAVA_OPTS='-Djava.security.properties==/xxx/my.java.security -Dazure.keyvault.uri=xxx'
Смысл каждого из этих свойств см. в статье Использование Azure Key Vault для доставки TLS/SSL-сертификатов вJVM.