Skip to content

Commit 3921af0

Browse files
author
Rujun Chen
authored
1. Make KeyVaultJcaProvider can work when keyvault-uri is not set. (Azure#22488)
2. Delete unused property: azure.keyvault.aad-authentication-url 3. Reuse the code in test. 4. Rename KeyVaultProperties to AzureKeyVaultProperties. 5. Add AzureCertPathProperties.
1 parent bff806b commit 3921af0

File tree

4 files changed

+65
-45
lines changed

4 files changed

+65
-45
lines changed

sdk/keyvault/azure-security-keyvault-jca/src/test/java/com/azure/security/keyvault/jca/KeyVaultClientTest.java

Lines changed: 21 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -28,81 +28,64 @@ public class KeyVaultClientTest {
2828
private static final String KEY_VAULT_TEST_URI_US = "https://fake.vault.usgovcloudapi.net/";
2929
private static final String KEY_VAULT_TEST_URI_DE = "https://fake.vault.microsoftazure.de/";
3030

31-
private KeyVaultClient kvClient;
31+
private KeyVaultClient keyVaultClient;
3232

3333
/**
3434
* Test initialization of keyVaultBaseUri and aadAuthenticationUrl.
35-
*
3635
*/
3736
@Test
3837
public void testInitializationOfGlobalURI() {
39-
kvClient = new KeyVaultClient(KEY_VAULT_TEST_URI_GLOBAL, null);
40-
Assertions.assertEquals(kvClient.getKeyVaultBaseUri(), KEY_VAULT_BASE_URI_GLOBAL);
41-
Assertions.assertEquals(kvClient.getAadAuthenticationUrl(), AAD_LOGIN_URI_GLOBAL);
38+
keyVaultClient = new KeyVaultClient(KEY_VAULT_TEST_URI_GLOBAL, null);
39+
Assertions.assertEquals(keyVaultClient.getKeyVaultBaseUri(), KEY_VAULT_BASE_URI_GLOBAL);
40+
Assertions.assertEquals(keyVaultClient.getAadAuthenticationUrl(), AAD_LOGIN_URI_GLOBAL);
4241
}
4342

4443
@Test
4544
public void testInitializationOfCNURI() {
46-
kvClient = new KeyVaultClient(KEY_VAULT_TEST_URI_CN, null);
47-
Assertions.assertEquals(kvClient.getKeyVaultBaseUri(), KEY_VAULT_BASE_URI_CN);
48-
Assertions.assertEquals(kvClient.getAadAuthenticationUrl(), AAD_LOGIN_URI_CN);
45+
keyVaultClient = new KeyVaultClient(KEY_VAULT_TEST_URI_CN, null);
46+
Assertions.assertEquals(keyVaultClient.getKeyVaultBaseUri(), KEY_VAULT_BASE_URI_CN);
47+
Assertions.assertEquals(keyVaultClient.getAadAuthenticationUrl(), AAD_LOGIN_URI_CN);
4948
}
5049

5150
@Test
5251
public void testInitializationOfUSURI() {
53-
kvClient = new KeyVaultClient(KEY_VAULT_TEST_URI_US, null);
54-
Assertions.assertEquals(kvClient.getKeyVaultBaseUri(), KEY_VAULT_BASE_URI_US);
55-
Assertions.assertEquals(kvClient.getAadAuthenticationUrl(), AAD_LOGIN_URI_US);
52+
keyVaultClient = new KeyVaultClient(KEY_VAULT_TEST_URI_US, null);
53+
Assertions.assertEquals(keyVaultClient.getKeyVaultBaseUri(), KEY_VAULT_BASE_URI_US);
54+
Assertions.assertEquals(keyVaultClient.getAadAuthenticationUrl(), AAD_LOGIN_URI_US);
5655
}
5756

5857
@Test
5958
public void testInitializationOfDEURI() {
60-
kvClient = new KeyVaultClient(KEY_VAULT_TEST_URI_DE, null);
61-
Assertions.assertEquals(kvClient.getKeyVaultBaseUri(), KEY_VAULT_BASE_URI_DE);
62-
Assertions.assertEquals(kvClient.getAadAuthenticationUrl(), AAD_LOGIN_URI_DE);
59+
keyVaultClient = new KeyVaultClient(KEY_VAULT_TEST_URI_DE, null);
60+
Assertions.assertEquals(keyVaultClient.getKeyVaultBaseUri(), KEY_VAULT_BASE_URI_DE);
61+
Assertions.assertEquals(keyVaultClient.getAadAuthenticationUrl(), AAD_LOGIN_URI_DE);
6362
}
6463

6564
@Test
6665
@Disabled
6766
public void testGetAliases() {
68-
String tenantId = System.getProperty("azure.keyvault.tenant-id");
69-
String clientId = System.getProperty("azure.keyvault.client-id");
70-
String clientSecret = System.getProperty("azure.keyvault.client-secret");
71-
String keyVaultUri = System.getProperty("azure.keyvault.uri");
72-
KeyVaultClient keyVaultClient = new KeyVaultClient(
73-
keyVaultUri, System.getProperty("azure.keyvault.aad-authentication-url"),
74-
tenantId,
75-
clientId,
76-
clientSecret);
77-
List<String> result = keyVaultClient.getAliases();
67+
List<String> result = getKeyVaultClient().getAliases();
7868
assertNotNull(result);
7969
}
8070

8171
@Test
8272
@Disabled
8373
public void testGetCertificate() {
84-
String tenantId = System.getProperty("azure.keyvault.tenant-id");
85-
String clientId = System.getProperty("azure.keyvault.client-id");
86-
String clientSecret = System.getProperty("azure.keyvault.client-secret");
87-
String keyVaultUri = System.getProperty("azure.keyvault.uri");
88-
KeyVaultClient keyVaultClient = new KeyVaultClient(
89-
keyVaultUri, System.getProperty("azure.keyvault.aad-authentication-url"),
90-
tenantId,
91-
clientId,
92-
clientSecret);
93-
Certificate certificate = keyVaultClient.getCertificate("myalias");
74+
Certificate certificate = getKeyVaultClient().getCertificate("myalias");
9475
assertNotNull(certificate);
9576
}
9677

9778
@Test
9879
@Disabled
9980
public void testGetKey() {
81+
assertNull(getKeyVaultClient().getKey("myalias", null));
82+
}
83+
84+
private KeyVaultClient getKeyVaultClient() {
85+
String keyVaultUri = System.getProperty("azure.keyvault.uri");
10086
String tenantId = System.getProperty("azure.keyvault.tenant-id");
10187
String clientId = System.getProperty("azure.keyvault.client-id");
10288
String clientSecret = System.getProperty("azure.keyvault.client-secret");
103-
String keyVaultUri = System.getProperty("azure.keyvault.uri");
104-
KeyVaultClient keyVaultClient = new KeyVaultClient(
105-
keyVaultUri, System.getProperty("azure.keyvault.aad-authentication-url"), tenantId, clientId, clientSecret);
106-
assertNull(keyVaultClient.getKey("myalias", null));
89+
return new KeyVaultClient(keyVaultUri, tenantId, clientId, clientSecret);
10790
}
10891
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
// Copyright (c) Microsoft Corporation. All rights reserved.
2+
// Licensed under the MIT License.
3+
package com.azure.spring.security.keyvault.certificates.starter;
4+
5+
import org.springframework.boot.context.properties.ConfigurationProperties;
6+
import org.springframework.boot.context.properties.EnableConfigurationProperties;
7+
8+
/**
9+
* This is used to generate spring-configuration-metadata.json
10+
*
11+
* @see <a href="https://docs.spring.io/spring-boot/docs/current/reference/html/appendix-configuration-metadata.html">Metadata</a>
12+
*/
13+
@EnableConfigurationProperties({ AzureCertPathProperties.class })
14+
@ConfigurationProperties("azure.cert-path")
15+
public class AzureCertPathProperties {
16+
17+
/**
18+
* The path to put custom certificates
19+
*/
20+
private String custom;
21+
22+
/**
23+
* The path to put well-known certificates
24+
*/
25+
private String wellKnown;
26+
27+
public String getCustom() {
28+
return custom;
29+
}
30+
31+
public String getWellKnown() {
32+
return wellKnown;
33+
}
34+
35+
public void setCustom(String custom) {
36+
this.custom = custom;
37+
}
38+
39+
public void setWellKnown(String wellKnown) {
40+
this.wellKnown = wellKnown;
41+
}
42+
}
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@
1010
*
1111
* @see <a href="https://docs.spring.io/spring-boot/docs/current/reference/html/appendix-configuration-metadata.html">Metadata</a>
1212
*/
13-
@EnableConfigurationProperties({ KeyVaultProperties.class })
13+
@EnableConfigurationProperties({ AzureKeyVaultProperties.class })
1414
@ConfigurationProperties("azure.keyvault")
15-
public class KeyVaultProperties {
15+
public class AzureKeyVaultProperties {
1616
/**
1717
* The URI to the Azure Key Vault used
1818
*/

sdk/spring/azure-spring-boot-starter-keyvault-certificates/src/main/java/com/azure/spring/security/keyvault/certificates/starter/KeyVaultCertificatesEnvironmentPostProcessor.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,6 @@ public class KeyVaultCertificatesEnvironmentPostProcessor implements Environment
2727
@Override
2828
public void postProcessEnvironment(ConfigurableEnvironment environment, SpringApplication application) {
2929

30-
if (environment.getProperty("azure.keyvault.uri") == null) {
31-
return;
32-
}
33-
34-
putEnvironmentPropertyToSystemProperty(environment, "azure.keyvault.aad-authentication-url");
3530
putEnvironmentPropertyToSystemProperty(environment, "azure.keyvault.uri");
3631
putEnvironmentPropertyToSystemProperty(environment, "azure.keyvault.tenant-id");
3732
putEnvironmentPropertyToSystemProperty(environment, "azure.keyvault.client-id");

0 commit comments

Comments
 (0)