Cvičení – zabezpečení aplikace v Javě z pohledu vývojáře v Javě
V této lekci nakonfigurujete existující aplikaci Spring Boot tak, aby používala tajné kódy uložené ve službě Azure Key Vault.
Převezmete roli vývojáře v Javě, který konfiguruje projekt tak, aby tyto tajné kódy četl.
Konfigurace projektu Java
Úvodní sada Azure Spring Boot pro Key Vault automatizuje použití sady Java SDK služby Key Vault pro vývojáře Spring Boot.
V předchozí části jsme přidali dvě proměnné prostředí pomocí Azure CLI: AZURE_KEYVAULT_ENABLED
a AZURE_KEYVAULT_URI
.
Spring Boot přečte tyto proměnné prostředí a použije je k ověření ve službě Azure Key Vault pomocí sady Java SDK pro Key Vault.
Pokud chcete přidat podporu úvodní sady Azure Spring Boot pro Key Vault, přidejte do souboru aplikace pom.xml
následující závislost:
<dependency>
<groupId>com.azure.spring</groupId>
<artifactId>azure-spring-boot-starter-keyvault-secrets</artifactId>
</dependency>
Když jsme vytvořili projekt Java, pevně zakódovali jsme do souboru název databáze a heslo src/main/resources/application.properties
. Nezapomeňte se vrátit k této verzi, která používá proměnné poskytované službou Azure Key Vault:
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
Díky této změně zdrojový kód vaší aplikace neobsahuje žádné tajné kódy a získá je z instance služby Azure Key Vault, kterou jsme nakonfigurovali v předchozí části.
Nasazení aplikace v Javě do Azure
Stejně jako v předchozí lekci musíte aplikaci nejprve zabalit jako soubor Jar:
./mvnw clean package
Pak ho nasaďte pomocí Azure CLI. Spuštění tohoto příkazu může trvat několik minut.
az spring app deploy \
--resource-group $AZ_RESOURCE_GROUP \
--service $AZ_SPRING_CLOUD \
--name application \
--artifact-path target/*.jar
Pokud dojde k selháním, můžete se podívat na protokoly aplikace zadáním následujícího příkazu:
az spring app logs \
--resource-group $AZ_RESOURCE_GROUP \
--service $AZ_SPRING_CLOUD \
--name application
Aplikace je teď dostupná v cloudu a přístup k jejím datům můžete získat pomocí příkazu cURL:
curl https://$AZ_SPRING_CLOUD-application.azuremicroservices.io
Blahopřejeme, úspěšně jste vytvořili aplikaci nulová důvěra (Zero Trust) Java, která k ukládání tajných kódů používá Službu Azure Key Vault.