Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix contract on Key Vault broken with premature merge #17741 #18340

Merged
merged 1 commit into from
Dec 30, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -87,4 +87,8 @@ venv

# NetBeans
nbproject
nb-configuration.xml
nb-configuration.xml

# Emacs #

#changebundle.txt#
12 changes: 6 additions & 6 deletions sdk/keyvault/azure-security-keyvault-jca/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,9 @@ Security.addProvider(provider);
KeyStore ks = KeyStore.getInstance("AzureKeyVault");
KeyVaultLoadStoreParameter parameter = new KeyVaultLoadStoreParameter(
System.getProperty("azure.keyvault.uri"),
System.getProperty("azure.tenant.id"),
System.getProperty("azure.client.id"),
System.getProperty("azure.client.secret"));
System.getProperty("azure.keyvault.tenant-id"),
System.getProperty("azure.keyvault.client-id"),
System.getProperty("azure.keyvault.client-secret"));
ks.load(parameter);

KeyManagerFactory kmf = KeyManagerFactory.getInstance(KeyManagerFactory.getDefaultAlgorithm());
Expand Down Expand Up @@ -60,9 +60,9 @@ Security.addProvider(provider);
KeyStore ks = KeyStore.getInstance("AzureKeyVault");
KeyVaultLoadStoreParameter parameter = new KeyVaultLoadStoreParameter(
System.getProperty("azure.keyvault.uri"),
System.getProperty("azure.tenant.id"),
System.getProperty("azure.client.id"),
System.getProperty("azure.client.secret"));
System.getProperty("azure.keyvault.tenant-id"),
System.getProperty("azure.keyvault.client-id"),
System.getProperty("azure.keyvault.client-secret"));
ks.load(parameter);

SSLContext sslContext = SSLContexts
Expand Down
12 changes: 6 additions & 6 deletions sdk/keyvault/azure-security-keyvault-jca/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -180,9 +180,9 @@
To run the integration tests pass in the following system properties

- azure.keyvault.uri - the Azure Key Vault URI
- azure.tenant.id - your tenant ID
- azure.client.id - the (application) client ID
- azure.client.secret - the (application) client secret
- azure.keyvault.tenant-id - your tenant ID
- azure.keyvault.client-id - the (application) client ID
- azure.keyvault.client-secret - the (application) client secret

-->
<activation>
Expand All @@ -200,9 +200,9 @@
<skip>false</skip>
<systemPropertyVariables>
<azure.keyvault.uri>${azure.keyvault.uri}</azure.keyvault.uri>
<azure.tenant.id>${azure.tenant.id}</azure.tenant.id>
<azure.client.id>${azure.client.id}</azure.client.id>
<azure.client.secret>${azure.client.secret}</azure.client.secret>
<azure.keyvault.tenant-id>${azure.keyvault.tenant-id}</azure.keyvault.tenant-id>
<azure.keyvault.client-id>${azure.keyvault.client-id}</azure.keyvault.client-id>
<azure.keyvault.client-secret>${azure.keyvault.client-secret}</azure.keyvault.client-secret>
</systemPropertyVariables>
</configuration>
</plugin>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -83,11 +83,11 @@ public final class KeyVaultKeyStore extends KeyStoreSpi {
public KeyVaultKeyStore() {
creationDate = new Date();
String keyVaultUri = System.getProperty("azure.keyvault.uri");
String aadAuthenticationUrl = System.getProperty("azure.keyvault.aadAuthenticationUrl");
String tenantId = System.getProperty("azure.keyvault.tenantId");
String clientId = System.getProperty("azure.keyvault.clientId");
String clientSecret = System.getProperty("azure.keyvault.clientSecret");
String managedIdentity = System.getProperty("azure.keyvault.managedIdentity");
String aadAuthenticationUrl = System.getProperty("azure.keyvault.aad-authentication-url");
String tenantId = System.getProperty("azure.keyvault.tenant-id");
String clientId = System.getProperty("azure.keyvault.client-id");
String clientSecret = System.getProperty("azure.keyvault.client-secret");
String managedIdentity = System.getProperty("azure.keyvault.managed-identity");
if (clientId != null) {
keyVaultClient = new KeyVaultClient(keyVaultUri, aadAuthenticationUrl, tenantId, clientId, clientSecret);
} else {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,11 @@ public void clientSSLSample() throws Exception {

KeyStore ks = KeyStore.getInstance("AzureKeyVault");
KeyVaultLoadStoreParameter parameter = new KeyVaultLoadStoreParameter(
System.getProperty("azure.keyvault.uri"),
System.getProperty("azure.keyvault.aadAuthenticationUrl"),
System.getProperty("azure.tenant.id"),
System.getProperty("azure.client.id"),
System.getProperty("azure.client.secret"));
System.getProperty("azure.keyvault.uri"),
System.getProperty("azure.keyvault.aad-authentication-url"),
System.getProperty("azure.keyvault.tenant-id"),
System.getProperty("azure.keyvault.client-id"),
System.getProperty("azure.keyvault.client-secret"));
ks.load(parameter);

SSLContext sslContext = SSLContexts
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,10 @@ public void serverSSLSample() throws Exception {
KeyStore ks = KeyStore.getInstance("AzureKeyVault");
KeyVaultLoadStoreParameter parameter = new KeyVaultLoadStoreParameter(
System.getProperty("azure.keyvault.uri"),
System.getProperty("azure.keyvault.aadAuthenticationUrl"),
System.getProperty("azure.tenant.id"),
System.getProperty("azure.client.id"),
System.getProperty("azure.client.secret"));
System.getProperty("azure.keyvault.aad-authentication-url"),
System.getProperty("azure.keyvault.tenant-id"),
System.getProperty("azure.keyvault.client-id"),
System.getProperty("azure.keyvault.client-secret"));
ks.load(parameter);

KeyManagerFactory kmf = KeyManagerFactory.getInstance(KeyManagerFactory.getDefaultAlgorithm());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,13 +21,13 @@ public class AuthClientTest {
*/
@Test
public void testGetAuthorizationToken() throws Exception {
String tenantId = System.getProperty("azure.tenant.id");
String clientId = System.getProperty("azure.client.id");
String clientSecret = System.getProperty("azure.client.secret");
String tenantId = System.getProperty("azure.keyvault.tenant-id");
String clientId = System.getProperty("azure.keyvault.client-id");
String clientSecret = System.getProperty("azure.keyvault.client-secret");
AuthClient authClient = new AuthClient();
String result = authClient.getAccessToken(
"https://management.azure.com/",
System.getProperty("azure.keyvault.aadAuthenticationUrl"),
System.getProperty("azure.keyvault.aad-authentication-url"),
tenantId,
clientId,
URLEncoder.encode(clientSecret, "UTF-8")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,10 +36,10 @@ public void testGetCertificate() throws Exception {
KeyStore keystore = KeyStore.getInstance("AzureKeyVault");
KeyVaultLoadStoreParameter parameter = new KeyVaultLoadStoreParameter(
System.getProperty("azure.keyvault.uri"),
System.getProperty("azure.keyvault.aadAuthenticationUrl"),
System.getProperty("azure.tenant.id"),
System.getProperty("azure.client.id"),
System.getProperty("azure.client.secret"));
System.getProperty("azure.keyvault.aad-authentication-url"),
System.getProperty("azure.keyvault.tenant-id"),
System.getProperty("azure.keyvault.client-id"),
System.getProperty("azure.keyvault.client-secret"));
keystore.load(parameter);
assertNull(keystore.getCertificate("myalias"));
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,10 +51,10 @@ public void testEngineGetCertificate() {
KeyVaultKeyStore keystore = new KeyVaultKeyStore();
KeyVaultLoadStoreParameter parameter = new KeyVaultLoadStoreParameter(
System.getProperty("azure.keyvault.uri"),
System.getProperty("azure.keyvault.aadAuthenticationUrl"),
System.getProperty("azure.tenant.id"),
System.getProperty("azure.client.id"),
System.getProperty("azure.client.secret"));
System.getProperty("azure.keyvault.aad-authentication-url"),
System.getProperty("azure.keyvault.tenant-id"),
System.getProperty("azure.keyvault.client-id"),
System.getProperty("azure.keyvault.client-secret"));
keystore.engineLoad(parameter);
assertNull(keystore.engineGetCertificate("myalias"));
}
Expand All @@ -64,10 +64,10 @@ public void testEngineGetCertificateAlias() {
KeyVaultKeyStore keystore = new KeyVaultKeyStore();
KeyVaultLoadStoreParameter parameter = new KeyVaultLoadStoreParameter(
System.getProperty("azure.keyvault.uri"),
System.getProperty("azure.keyvault.aadAuthenticationUrl"),
System.getProperty("azure.tenant.id"),
System.getProperty("azure.client.id"),
System.getProperty("azure.client.secret"));
System.getProperty("azure.keyvault.aad-authentication-url"),
System.getProperty("azure.keyvault.tenant-id"),
System.getProperty("azure.keyvault.client-id"),
System.getProperty("azure.keyvault.client-secret"));
keystore.engineLoad(parameter);
assertNull(keystore.engineGetCertificateAlias(null));
}
Expand All @@ -77,10 +77,10 @@ public void testEngineGetCertificateChain() {
KeyVaultKeyStore keystore = new KeyVaultKeyStore();
KeyVaultLoadStoreParameter parameter = new KeyVaultLoadStoreParameter(
System.getProperty("azure.keyvault.uri"),
System.getProperty("azure.keyvault.aadAuthenticationUrl"),
System.getProperty("azure.tenant.id"),
System.getProperty("azure.client.id"),
System.getProperty("azure.client.secret"));
System.getProperty("azure.keyvault.aad-authentication-url"),
System.getProperty("azure.keyvault.tenant-id"),
System.getProperty("azure.keyvault.client-id"),
System.getProperty("azure.keyvault.client-secret"));
keystore.engineLoad(parameter);
assertNull(keystore.engineGetCertificateChain("myalias"));
}
Expand All @@ -90,10 +90,10 @@ public void testEngineIsCertificateEntry() {
KeyVaultKeyStore keystore = new KeyVaultKeyStore();
KeyVaultLoadStoreParameter parameter = new KeyVaultLoadStoreParameter(
System.getProperty("azure.keyvault.uri"),
System.getProperty("azure.keyvault.aadAuthenticationUrl"),
System.getProperty("azure.tenant.id"),
System.getProperty("azure.client.id"),
System.getProperty("azure.client.secret"));
System.getProperty("azure.keyvault.aad-authentication-url"),
System.getProperty("azure.keyvault.tenant-id"),
System.getProperty("azure.keyvault.client-id"),
System.getProperty("azure.keyvault.client-secret"));
keystore.engineLoad(parameter);
assertFalse(keystore.engineIsCertificateEntry("myalias"));
}
Expand All @@ -103,10 +103,10 @@ public void testEngineSetCertificateEntry() {
KeyVaultKeyStore keystore = new KeyVaultKeyStore();
KeyVaultLoadStoreParameter parameter = new KeyVaultLoadStoreParameter(
System.getProperty("azure.keyvault.uri"),
System.getProperty("azure.keyvault.aadAuthenticationUrl"),
System.getProperty("azure.tenant.id"),
System.getProperty("azure.client.id"),
System.getProperty("azure.client.secret"));
System.getProperty("azure.keyvault.aad-authentication-url"),
System.getProperty("azure.keyvault.tenant-id"),
System.getProperty("azure.keyvault.client-id"),
System.getProperty("azure.keyvault.client-secret"));
keystore.engineLoad(parameter);

X509Certificate certificate;
Expand All @@ -128,10 +128,10 @@ public void testEngineGetKey() {
KeyVaultKeyStore keystore = new KeyVaultKeyStore();
KeyVaultLoadStoreParameter parameter = new KeyVaultLoadStoreParameter(
System.getProperty("azure.keyvault.uri"),
System.getProperty("azure.keyvault.aadAuthenticationUrl"),
System.getProperty("azure.tenant.id"),
System.getProperty("azure.client.id"),
System.getProperty("azure.client.secret"));
System.getProperty("azure.keyvault.aad-authentication-url"),
System.getProperty("azure.keyvault.tenant-id"),
System.getProperty("azure.keyvault.client-id"),
System.getProperty("azure.keyvault.client-secret"));
keystore.engineLoad(parameter);
assertNull(keystore.engineGetKey("myalias", null));
}
Expand All @@ -141,10 +141,10 @@ public void testEngineIsKeyEntry() {
KeyVaultKeyStore keystore = new KeyVaultKeyStore();
KeyVaultLoadStoreParameter parameter = new KeyVaultLoadStoreParameter(
System.getProperty("azure.keyvault.uri"),
System.getProperty("azure.keyvault.aadAuthenticationUrl"),
System.getProperty("azure.tenant.id"),
System.getProperty("azure.client.id"),
System.getProperty("azure.client.secret"));
System.getProperty("azure.keyvault.aad-authentication-url"),
System.getProperty("azure.keyvault.tenant-id"),
System.getProperty("azure.keyvault.client-id"),
System.getProperty("azure.keyvault.client-secret"));
keystore.engineLoad(parameter);
assertFalse(keystore.engineIsKeyEntry("myalias"));
}
Expand All @@ -166,10 +166,10 @@ public void testEngineAliases() {
KeyVaultKeyStore keystore = new KeyVaultKeyStore();
KeyVaultLoadStoreParameter parameter = new KeyVaultLoadStoreParameter(
System.getProperty("azure.keyvault.uri"),
System.getProperty("azure.keyvault.aadAuthenticationUrl"),
System.getProperty("azure.tenant.id"),
System.getProperty("azure.client.id"),
System.getProperty("azure.client.secret"));
System.getProperty("azure.keyvault.aad-authentication-url"),
System.getProperty("azure.keyvault.tenant-id"),
System.getProperty("azure.keyvault.client-id"),
System.getProperty("azure.keyvault.client-secret"));
keystore.engineLoad(parameter);
assertTrue(keystore.engineAliases().hasMoreElements());
}
Expand All @@ -179,10 +179,10 @@ public void testEngineContainsAlias() {
KeyVaultKeyStore keystore = new KeyVaultKeyStore();
KeyVaultLoadStoreParameter parameter = new KeyVaultLoadStoreParameter(
System.getProperty("azure.keyvault.uri"),
System.getProperty("azure.keyvault.aadAuthenticationUrl"),
System.getProperty("azure.tenant.id"),
System.getProperty("azure.client.id"),
System.getProperty("azure.client.secret"));
System.getProperty("azure.keyvault.aad-authentication-url"),
System.getProperty("azure.keyvault.tenant-id"),
System.getProperty("azure.keyvault.client-id"),
System.getProperty("azure.keyvault.client-secret"));
keystore.engineLoad(parameter);
assertFalse(keystore.engineContainsAlias("myalias"));
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ public class KeyVaultLoadStoreParameterTest {
public void testGetProtectionParameter() {
KeyVaultLoadStoreParameter parameter = new KeyVaultLoadStoreParameter(
System.getProperty("azure.keyvault.uri"),
System.getProperty("azure.keyvault.aadAuthenticationUrl"),
System.getProperty("azure.keyvault.aad-authentication-url"),
null,
null,
null
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,9 +61,9 @@ public void testServerSocket() throws Exception {
KeyVaultLoadStoreParameter parameter = new KeyVaultLoadStoreParameter(
System.getProperty("azure.keyvault.uri"),
null,
System.getProperty("azure.tenant.id"),
System.getProperty("azure.client.id"),
System.getProperty("azure.client.secret"));
System.getProperty("azure.keyvault.tenant-id"),
System.getProperty("azure.keyvault.client-id"),
System.getProperty("azure.keyvault.client-secret"));
ks.load(parameter);

KeyManagerFactory kmf = KeyManagerFactory.getInstance(KeyManagerFactory.getDefaultAlgorithm());
Expand Down Expand Up @@ -167,9 +167,9 @@ public void testServerSocketWithSelfSignedClientTrust() throws Exception {
KeyVaultLoadStoreParameter parameter = new KeyVaultLoadStoreParameter(
System.getProperty("azure.keyvault.uri"),
null,
System.getProperty("azure.tenant.id"),
System.getProperty("azure.client.id"),
System.getProperty("azure.client.secret"));
System.getProperty("azure.keyvault.tenant-id"),
System.getProperty("azure.keyvault.client-id"),
System.getProperty("azure.keyvault.client-secret"));
ks.load(parameter);

KeyManagerFactory kmf = KeyManagerFactory.getInstance(KeyManagerFactory.getDefaultAlgorithm());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -98,11 +98,11 @@
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<systemPropertyVariables>
<AZURE_KEYVAULT_URI>${azure.keyvault.uri}</AZURE_KEYVAULT_URI>
<AZURE_KEYVAULT_TENTANT_ID>${azure.tenant.id}</AZURE_KEYVAULT_TENTANT_ID>
<AZURE_KEYVAULT_CLIENT_ID>${azure.client.id}</AZURE_KEYVAULT_CLIENT_ID>
<AZURE_KEYVAULT_CLIENT_SECRET>${azure.client.secret}</AZURE_KEYVAULT_CLIENT_SECRET>
<SERVER_SSL_KEY_ALIAS>${server.ssl.key-alias}</SERVER_SSL_KEY_ALIAS>
<azure.keyvault.uri>${azure.keyvault.uri}</azure.keyvault.uri>
<azure.keyvault.tenant-id>${azure.keyvault.tenant-id}</azure.keyvault.tenant-id>
<azure.keyvault.client-id>${azure.keyvault.client-id}</azure.keyvault.client-id>
<azure.keyvault.client-secret>${azure.keyvault.client-secret}</azure.keyvault.client-secret>
<server.ssl.key-alias>${server.ssl.key-alias}</server.ssl.key-alias>
</systemPropertyVariables>
</configuration>
</plugin>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# The URI to the Azure Key Vault used
azure.keyvault.uri=${AZURE_KEYVAULT_URI}
azure.keyvault.uri=${azure.keyvault.uri}
# The alias corresponding to the certificate in Azure Key Vault.
server.ssl.key-alias=${SERVER_SSL_KEY_ALIAS}
server.ssl.key-alias=${server.ssl.key-alias}
# The keystore type that enables the use of Azure Key Vault for your server-side
# SSL certificate.
server.ssl.key-store-type=AzureKeyVault
Expand All @@ -10,13 +10,13 @@ server.ssl.key-store-type=AzureKeyVault
# server.ssl.trust-store-type=AzureKeyVault
# The Tenant ID for your Azure Key Vault (needed if you are not using managed
# identity).
azure.keyvault.tenant-id=${AZURE_KEYVAULT_TENTANT_ID}
azure.keyvault.tenant-id=${azure.keyvault.tenant-id}
# The Client ID that has been setup with access to your Azure Key Vault (needed
# if you are not using managed identity).
azure.keyvault.client-id=${AZURE_KEYVAULT_CLIENT_ID}
azure.keyvault.client-id=${azure.keyvault.client-id}
# The Client Secret that will be used for accessing your Azure Key Vault (needed
# if you are not using managed identity).
azure.keyvault.client-secret=${AZURE_KEYVAULT_CLIENT_SECRET}
azure.keyvault.client-secret=${azure.keyvault.client-secret}
# The server port.

# The user-assigned managed identity object-id to use.
Expand Down