Øvelse – Beskyt et Java-program fra et Java-udviklerperspektiv
I dette undermodul konfigurerer du det eksisterende spring boot-program til at bruge de hemmeligheder, der er gemt i Azure Key Vault.
Du tager rollen som Java-udvikler, der konfigurerer deres projekt til at læse disse hemmeligheder.
Konfiguration af Java-projektet
Azure Spring Boot Starter til Key Vault automatiserer brugen af Key Vault Java SDK til udviklere af Spring Boot.
I forrige afsnit har vi tilføjet to miljøvariabler ved hjælp af kommandolinjegrænsefladen i Azure: AZURE_KEYVAULT_ENABLEDog AZURE_KEYVAULT_URI.
Spring Boot læser disse miljøvariabler og bruger dem til at godkende i Azure Key Vault ved hjælp af under Java SDK til Key Vault.
Hvis du vil tilføje understøttelse af Azure Spring Boot starter for Key Vault, skal du tilføje følgende afhængighed i programmets pom.xml-fil:
<dependency>
<groupId>com.azure.spring</groupId>
<artifactId>azure-spring-boot-starter-keyvault-secrets</artifactId>
</dependency>
Da vi oprettede Java-projektet, fastkodede vi databasenavnet og -adgangskoden i src/main/resources/application.properties-filen. Sørg for at gendanne den til denne version, som bruger variabler, der leveres af 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
Med denne ændring indeholder din programkildekode ingen hemmeligheder, og den henter dem fra den Azure Key Vault-forekomst, vi konfigurerede i det forrige afsnit.
Udrul Java-programmet på Azure
Som i det forrige undermodul skal du først pakke det som en Jar-fil for at installere programmet:
./mvnw clean package
Udrul den derefter ved hjælp af Kommandolinjegrænsefladen i Azure. Denne kommando kan tage flere minutter at køre.
az spring app deploy \
--resource-group $AZ_RESOURCE_GROUP \
--service $AZ_SPRING_CLOUD \
--name application \
--artifact-path target/*.jar
Hvis der opstår fejl, kan du se programlogfilerne ved at skrive følgende kommando:
az spring app logs \
--resource-group $AZ_RESOURCE_GROUP \
--service $AZ_SPRING_CLOUD \
--name application
Programmet er nu tilgængeligt i cloudmiljøet, og du kan få adgang til dets data ved hjælp af en cURL-kommando:
curl https://$AZ_SPRING_CLOUD-application.azuremicroservices.io
Tillykke, du har oprettet et Zero Trust Java-program, der bruger Azure Key Vault til at gemme hemmeligheder.