Azure-sdk-for-java: Azure рдХреБрдВрдЬреА рд╡реЙрд▓реНрдЯ рддрдХ рдкрд╣реБрдВрдЪрдирд╛ - DefaultAzureCredentialBuilder () рддреНрд░реБрдЯрд┐ рдлреЗрдВрдХрддрд╛ рд╣реИ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 6 рдЕрдЧре░ 2020  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: Azure/azure-sdk-for-java

рдирдорд╕реНрддреЗ,
рдореИрдВ рдпрд╣рд╛рдВ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдХрд╛ рдЕрдиреБрд╕рд░рдг рдХрд░ рд░рд╣рд╛ рд╣реВрдВ: https://docs.microsoft.com/en-us/azure/key-vault/secrets/quick-create-java
рдореЗрд░реЗ рдЬрд╛рд╡рд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдПрдХ рдХреБрдВрдЬреА рд╡реЙрд▓реНрдЯ рд╕реЗ рдПрдХ рд░рд╣рд╕реНрдп рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣рд╛ рд╣реИред

рдПрдХ SecretClient рдЪрд░ рдкреНрд░рд╛рд░рдВрдн рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╕рдордп, рдореБрдЭреЗ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓ рдмрд┐рдЯ рдореЗрдВ рддреНрд░реБрдЯрд┐ рдорд┐рд▓ рд░рд╣реА рд╣реИред рдореИрдВрдиреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рдХреЛ рд╕реАрдзреЗ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рд╕реЗ рдЕрдкрдиреЗ рдХреЛрдб рдореЗрдВ рдЪрд┐рдкрдХрд╛рдпрд╛ рд╣реИ (рдореЗрд░реЗ рдХреБрдВрдЬреА рд╡реЙрд▓реНрдЯ рдХреА рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд░рддреЗ рд╣реБрдП рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╡реИрд░рд┐рдПрдмрд▓ kvUri рдмрдирд╛рдпрд╛ рд╣реИ):
SecretClient secretClient = new SecretClientBuilder().vaultUrl(kvUri).credential(new DefaultAzureCredentialBuilder().build()) .buildClient();

рдореБрдЭреЗ 'рдирдИ DefaultAzureCredentialBuilder ()ред рдмрд┐рд▓реНрдб ()' рдХреЗ рддрд╣рдд рдПрдХ рд▓рд╛рд▓ рддреНрд░реБрдЯрд┐ рд░реЗрдЦрд╛ рдорд┐рд▓ рд░рд╣реА рд╣реИред рдЬрдм рдореИрдВ рдЙрд╕ рдкрд░ рдордВрдбрд░рд╛рддрд╛ рд╣реВрдВ рддреЛ рдореБрдЭреЗ рдпрд╣ рд╕рдВрджреЗрд╢ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИ:
"рдЖрд╡рд╢реНрдпрдХ рдкреНрд░рдХрд╛рд░: рдЯреЛрдХрди рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓
рдмрд╢рд░реНрддреЗ: DefaultAzureCredential"

рдореИрдВрдиреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЬрд╛рд░ рд╕реНрдерд╛рдкрд┐рдд рдФрд░ рдЖрдпрд╛рдд рдХрд┐рдП рд╣реИрдВ:
рдиреАрд▓рд╛-рд╕реБрд░рдХреНрд╖рд╛-рдХреАрд╡реЙрд▓реНрдЯ-рд░рд╣рд╕реНрдп-4.1.1.jar
рдиреАрд▓рд╛-рдкрд╣рдЪрд╛рди-1.1.0-рдмреАрдЯрд╛.7.jar

рдЖрдпрд╛рдд рд╡рд┐рд╡рд░рдг:
import com.azure.security.keyvault.secrets.SecretClient; import com.azure.security.keyvault.secrets.SecretClientBuilder; import com.azure.identity.DefaultAzureCredentialBuilder;

  • рдУрдПрд╕: рд╡рд┐рдВрдбреЛрдЬ 10
  • рдЖрдИрдбреАрдИ: рдЗрдВрдЯреЗрд▓рд┐рдЬреЗ

рдХреЛрдИ рд╡рд┐рдЪрд╛рд░ рдореИрдВ рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ?

рдзрдиреНрдпрд╡рд╛рдж!

Client Docs KeyVault customer-reported question

рд╕рднреА 3 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рджрд░реНрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, @ronny-spheraред @ vcolin7 , @g2vinay рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ рдЕрдиреБрд╡рд░реНрддреА

рд╣рд╛рдп @ рд░реЙрдиреА-рд╕реНрдлреЗрд░рд╛, рдореИрдВ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рдореБрджреНрджреЗ рдХреЛ рдкреБрди: рдкреЗрд╢ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред рдпрд╣рд╛рдВ рд╡рд╣ рдХреЛрдб рд╣реИ рдЬрд┐рд╕рдХрд╛ рдореИрдВрдиреЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдерд╛:

import com.azure.identity.DefaultAzureCredentialBuilder;
import com.azure.security.keyvault.secrets.SecretClient;
import com.azure.security.keyvault.secrets.SecretClientBuilder;
import com.azure.security.keyvault.secrets.models.KeyVaultSecret;
import com.azure.security.keyvault.secrets.models.SecretProperties;

public class ListSecrets {
    public static void main(String[] args) {
        String keyVaultUrl = "https://<your-keyvault-name>.vault.azure.net/";

        SecretClient secretClient = new SecretClientBuilder()
            .vaultUrl(keyVaultUrl)
            .credential(new DefaultAzureCredentialBuilder().build())
            .buildClient();

        System.out.println("Listing secrets");

        for(SecretProperties secretProperties : secretClient.listPropertiesOfSecrets()) {
            if (secretProperties.isEnabled()) {
                KeyVaultSecret secret = secretClient.getSecret(secretProperties.getName());

                System.out.printf("Secret name: %s, secret value: %s\n", secret.getName(), secret.getValue());
            }
        }
    }
}

рдореИрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХрд╛ рднреА рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ:

<dependency>
    <groupId>com.azure</groupId>
    <artifactId>azure-security-keyvault-secrets</artifactId>
    <version>4.1.1</version>
</dependency>
<dependency>
    <groupId>com.azure</groupId>
    <artifactId>azure-identity</artifactId>
    <version>1.1.0-beta.7</version>
</dependency>

рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдлрд┐рд░ рд╕реЗ рдмрдирд╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рдЙрд╕ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ mvn clean install рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд╣рд╛рдВ рдЖрдкрдХреА POM рдлрд╝рд╛рдЗрд▓ рд╕реНрдерд┐рдд рд╣реИред

рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкреЛрдо рдкрд░ рдирд┐рд░реНрднрд░рддрд╛ рдЬреЛрдбрд╝рдирд╛ рдФрд░ рдореЗрд╡реЗрди рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓реЛрдб рдХрд░рдирд╛ рдЗрд╕реЗ рд╣рд▓ рдХрд░ рдЪреБрдХрд╛ рд╣реИ - рдзрдиреНрдпрд╡рд╛рдж!

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

buchizo picture buchizo  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

Shanky2304 picture Shanky2304  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

SukruthKS picture SukruthKS  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

hemanttanwar picture hemanttanwar  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

marciopd picture marciopd  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ