Gyakorlat – Java-alkalmazások védelme Java fejlesztői szempontból
Ebben a leckében konfigurálja a meglévő Spring Boot-alkalmazást az Azure Key Vaultban tárolt titkos kulcsok használatára.
Ön egy Java-fejlesztő szerepét tölti be, aki úgy konfigurálja a projektet, hogy elolvassa ezeket a titkos kulcsokat.
A Java-projekt konfigurálása
A Key VaultHoz készült Azure Spring Boot starter automatizálja a Key Vault Java SDK használatát Spring Boot-fejlesztők számára.
Az előző szakaszban két környezeti változót adtunk hozzá az Azure CLI használatával: AZURE_KEYVAULT_ENABLEDés AZURE_KEYVAULT_URI.
A Spring Boot beolvassa ezeket a környezeti változókat, és a Key Vaulthoz készült Java SDK használatával hitelesíti őket az Azure Key Vaultban.
A Key Vault-hoz készült Azure Spring Boot starter támogatásának hozzáadásához adja hozzá az alábbi függőséget az alkalmazás pom.xml fájljába:
<dependency>
<groupId>com.azure.spring</groupId>
<artifactId>azure-spring-boot-starter-keyvault-secrets</artifactId>
</dependency>
A Java-projekt létrehozásakor az adatbázis nevét és jelszavát keményen kódoltuk a src/main/resources/application.properties fájlba. Mindenképpen állítsa vissza erre a verzióra, amely az Azure Key Vault által biztosított változókat használja:
logging.level.org.springframework.jdbc.core=DEBUG
spring.datasource.url=jdbc:postgresql://${azureDatabaseName}.postgres.database.azure.com:5432/demo
spring.datasource.username=${azureDatabaseUsername}@${azureDatabaseName}
spring.datasource.password=${azureDatabasePassword}
spring.sql.init.mode=always
Ezzel a módosítással az alkalmazás forráskódja nem tartalmaz titkos kulcsokat, és azokat az előző szakaszban konfigurált Azure Key Vault-példányból szerzi be.
A Java-alkalmazás üzembe helyezése az Azure-ban
Az előző leckéhez hasonlóan az alkalmazás üzembe helyezéséhez először Jar-fájlként kell csomagolnia:
./mvnw clean package
Ezután telepítse az Azure CLI-vel. A parancs futtatása több percet is igénybe vehet.
az spring app deploy \
--resource-group $AZ_RESOURCE_GROUP \
--service $AZ_SPRING_CLOUD \
--name application \
--artifact-path target/*.jar
Ha hibákba ütközik, az alkalmazásnaplókat az alábbi parancs beírásával tekintheti meg:
az spring app logs \
--resource-group $AZ_RESOURCE_GROUP \
--service $AZ_SPRING_CLOUD \
--name application
Az alkalmazás már elérhető a felhőben, és egy cURL-paranccsal érheti el az adatait:
curl https://$AZ_SPRING_CLOUD-application.azuremicroservices.io
Gratulálunk, sikeresen létrehozott egy Zero Trust Java-alkalmazást, amely az Azure Key Vaultot használja a titkok tárolására.