Partager via


CryptographyClientBuilder Classe

  • java.lang.Object
    • com.azure.security.keyvault.keys.cryptography.CryptographyClientBuilder

Implémente

public final class CryptographyClientBuilder
implements TokenCredentialTrait<CryptographyClientBuilder>, HttpTrait<CryptographyClientBuilder>, ConfigurationTrait<CryptographyClientBuilder>

Cette classe fournit une API Fluent Builder pour faciliter la configuration et l’instanciation de et CryptographyAsyncClientCryptographyClient, en appelant et buildClient() en construisant buildAsyncClient() respectivement un instance du client souhaité.

Les options de configuration minimale requises par CryptographyClientBuilder pour générer un CryptographyAsyncClient ou un CryptographyClient sont un TokenCredential et un JsonWebKey ou un Azure Key Vault key identifier.

Pour garantir un comportement correct lors de l’exécution d’opérations telles que , et , il est recommandé d’utiliser ou CryptographyClientCryptographyAsyncClient créé pour la version de clé spécifique utilisée pour l’opération inverse correspondante : Encrypt, Wrapou Sign, respectivement.VerifyUnwrapDecrypt

CryptographyAsyncClient cryptographyAsyncClient = new CryptographyClientBuilder()
     .keyIdentifier("<your-key-id>")
     .credential(new DefaultAzureCredentialBuilder().build())
     .buildAsyncClient();
JsonWebKey jsonWebKey = new JsonWebKey().setId("SampleJsonWebKey");
 CryptographyAsyncClient cryptographyAsyncClient = new CryptographyClientBuilder()
     .jsonWebKey(jsonWebKey)
     .buildAsyncClient();

Le log detail level, plusieurs personnalisés policies et un personnalisé HttpClient peuvent éventuellement être configurés dans .CryptographyClientBuilder

CryptographyAsyncClient cryptographyAsyncClient = new CryptographyClientBuilder()
     .keyIdentifier("<your-key-id>")
     .credential(new DefaultAzureCredentialBuilder().build())
     .httpLogOptions(new HttpLogOptions().setLogLevel(HttpLogDetailLevel.BODY_AND_HEADERS))
     .httpClient(HttpClient.createDefault())
     .buildAsyncClient();

Les options de configuration minimale requises par CryptographyClientBuilder pour générer CryptographyClient sont JsonWebKey ou et Azure Key Vault key identifierTokenCredential.

CryptographyClient cryptographyClient = new CryptographyClientBuilder()
     .keyIdentifier("<your-key-id>")
     .credential(new DefaultAzureCredentialBuilder().build())
     .buildClient();
JsonWebKey jsonWebKey = new JsonWebKey().setId("SampleJsonWebKey");
 CryptographyClient cryptographyClient = new CryptographyClientBuilder()
     .jsonWebKey(jsonWebKey)
     .buildClient();

Récapitulatif du constructeur

Constructeur Description
CryptographyClientBuilder()

Constructeur avec les valeurs par défaut.

Résumé de la méthode

Modificateur et type Méthode et description
CryptographyClientBuilder addPolicy(HttpPipelinePolicy policy)

Ajoute un HttpPipelinePolicy à appliquer à chaque requête envoyée.

CryptographyAsyncClient buildAsyncClient()

Crée un CryptographyAsyncClient basé sur les options définies dans le générateur.

CryptographyClient buildClient()

Crée un CryptographyClient basé sur les options définies dans le générateur.

CryptographyClientBuilder clientOptions(ClientOptions clientOptions)

Permet de définir des propriétés courantes telles que l’ID d’application, les en-têtes, la configuration du proxy, etc.

CryptographyClientBuilder configuration(Configuration configuration)

Définit le magasin de configuration utilisé pendant la construction du client de service.

CryptographyClientBuilder credential(TokenCredential credential)

Définit le TokenCredential utilisé pour autoriser les requêtes envoyées au service.

CryptographyClientBuilder disableChallengeResourceVerification()

Désactive la vérification si la ressource de défi d’authentification correspond au Key Vault ou au domaine HSM managé.

CryptographyClientBuilder httpClient(HttpClient client)

Définit le HttpClient à utiliser pour l’envoi et la réception de requêtes vers et à partir du service.

CryptographyClientBuilder httpLogOptions(HttpLogOptions logOptions)

Définit le à utiliser lors de l’envoi HttpLogOptions et de la réception de requêtes vers et à partir du service.

CryptographyClientBuilder jsonWebKey(JsonWebKey jsonWebKey)

Définit le JsonWebKey à utiliser pour les opérations de chiffrement locales.

CryptographyClientBuilder keyIdentifier(String keyId)

Définit l’identificateur de clé Azure Key Vault de la clé web JSON à utiliser pour les opérations de chiffrement.

CryptographyClientBuilder pipeline(HttpPipeline pipeline)

Définit le HttpPipeline à utiliser pour le client de service.

CryptographyClientBuilder retryOptions(RetryOptions retryOptions)

Définit le RetryOptions pour toutes les demandes effectuées via le client.

CryptographyClientBuilder retryPolicy(RetryPolicy retryPolicy)

Définit le RetryPolicy qui est utilisé lors de l’envoi de chaque requête.

CryptographyClientBuilder serviceVersion(CryptographyServiceVersion version)

Définit le CryptographyServiceVersion qui est utilisé lors de l’envoi de demandes d’API.

Méthodes héritées de java.lang.Object

Détails du constructeur

CryptographyClientBuilder

public CryptographyClientBuilder()

Constructeur avec les valeurs par défaut.

Détails de la méthode

addPolicy

public CryptographyClientBuilder addPolicy(HttpPipelinePolicy policy)

Ajoute un HttpPipelinePolicy à appliquer à chaque requête envoyée.

Note: Il est important de comprendre l’ordre de priorité des API HttpTrait. En particulier, si un HttpPipeline est spécifié, cela est prioritaire sur toutes les autres API du trait et elles seront ignorées. Si aucun n’est HttpPipeline spécifié, un pipeline HTTP est construit en interne en fonction des paramètres fournis à cette caractéristique. En outre, il peut y avoir d’autres API dans les types qui implémentent ce trait qui sont également ignorés si un HttpPipeline est spécifié. Veillez donc à consulter la documentation des types qui implémentent cette caractéristique pour comprendre l’ensemble complet des implications.

Parameters:

policy - Un HttpPipelinePolicy.

Returns:

Objet mis à jour CryptographyClientBuilder .

buildAsyncClient

public CryptographyAsyncClient buildAsyncClient()

Crée un CryptographyAsyncClient basé sur les options définies dans le générateur. Chaque fois buildAsyncClient() qu’est appelé, un nouveau instance de CryptographyAsyncClient est créé.

Si jsonWebKey(JsonWebKey jsonWebKey) est défini, tous les autres paramètres du générateur sont ignorés.

Si pipeline(HttpPipeline pipeline) est défini, les pipeline et ) keyIdentifier(String keyId)sont utilisés pour créer le CryptographyAsyncClient. Tous les autres paramètres du générateur sont ignorés. Si pipeline n’est pas défini, un credential(TokenCredential credential) et keyIdentifier(String keyId) sont requis pour générer le CryptographyAsyncClient.

Returns:

CryptographyAsyncClient avec les options définies à partir du générateur.

buildClient

public CryptographyClient buildClient()

Crée un CryptographyClient basé sur les options définies dans le générateur. Chaque fois buildClient() qu’est appelé, un nouveau instance de CryptographyClient est créé.

Si jsonWebKey(JsonWebKey jsonWebKey) est défini, tous les autres paramètres du générateur sont ignorés.

Si pipeline(HttpPipeline pipeline) est défini, les pipeline et keyIdentifier(String keyId) sont utilisés pour créer le CryptographyClient. Tous les autres paramètres du générateur sont ignorés. Si pipeline n’est pas défini, un credential(TokenCredential credential) et keyIdentifier(String keyId) sont requis pour générer le CryptographyClient.

Returns:

CryptographyClient avec les options définies à partir du générateur.

clientOptions

public CryptographyClientBuilder clientOptions(ClientOptions clientOptions)

Permet de définir des propriétés courantes telles que l’ID d’application, les en-têtes, la configuration du proxy, etc. Notez qu’il est recommandé d’appeler cette méthode avec un instance de la HttpClientOptions classe (une sous-classe de la ClientOptions classe de base). La sous-classe HttpClientOptions fournit d’autres options de configuration adaptées aux clients HTTP, ce qui s’applique à toute classe qui implémente cette interface HttpTrait.

Note: Il est important de comprendre l’ordre de priorité des API HttpTrait. En particulier, si un HttpPipeline est spécifié, cela est prioritaire sur toutes les autres API du trait et elles seront ignorées. Si aucun n’est HttpPipeline spécifié, un pipeline HTTP est construit en interne en fonction des paramètres fournis à cette caractéristique. En outre, il peut y avoir d’autres API dans les types qui implémentent ce trait qui sont également ignorés si un HttpPipeline est spécifié. Veillez donc à consulter la documentation des types qui implémentent cette caractéristique pour comprendre l’ensemble complet des implications.

Parameters:

clientOptions - un instance configuré de HttpClientOptions.

Returns:

Objet mis à jour CryptographyClientBuilder .

configuration

public CryptographyClientBuilder configuration(Configuration configuration)

Définit le magasin de configuration utilisé pendant la construction du client de service. Le magasin de configuration par défaut est un clone de , utilisez NONE pour contourner l’utilisation des paramètres de configuration pendant la global configuration storeconstruction.

Parameters:

configuration - Magasin de configuration utilisé pour obtenir les détails de configuration.

Returns:

Objet mis à jour CryptographyClientBuilder .

credential

public CryptographyClientBuilder credential(TokenCredential credential)

Définit le TokenCredential utilisé pour autoriser les requêtes envoyées au service. Pour plus d’informations sur l’utilisation appropriée du type, consultez la documentation sur l’identité et l’authentification du TokenCredential Kit de développement logiciel (SDK) Azure pour Java.

Parameters:

credential - TokenCredential utilisé pour autoriser les demandes envoyées au service.

Returns:

Objet mis à jour CryptographyClientBuilder .

disableChallengeResourceVerification

public CryptographyClientBuilder disableChallengeResourceVerification()

Désactive la vérification si la ressource de défi d’authentification correspond au Key Vault ou au domaine HSM managé. Cette vérification est effectuée par défaut.

Returns:

Objet mis à jour CryptographyClientBuilder .

httpClient

public CryptographyClientBuilder httpClient(HttpClient client)

Définit le HttpClient à utiliser pour l’envoi et la réception de requêtes vers et à partir du service.

Note: Il est important de comprendre l’ordre de priorité des API HttpTrait. En particulier, si un HttpPipeline est spécifié, cela est prioritaire sur toutes les autres API du trait et elles seront ignorées. Si aucun n’est HttpPipeline spécifié, un pipeline HTTP est construit en interne en fonction des paramètres fournis à cette caractéristique. En outre, il peut y avoir d’autres API dans les types qui implémentent ce trait qui sont également ignorés si un HttpPipeline est spécifié. Veillez donc à consulter la documentation des types qui implémentent cette caractéristique pour comprendre l’ensemble complet des implications.

Parameters:

client - HttpClient à utiliser pour les demandes.

Returns:

Objet mis à jour CryptographyClientBuilder .

httpLogOptions

public CryptographyClientBuilder httpLogOptions(HttpLogOptions logOptions)

Définit le à utiliser lors de l’envoi HttpLogOptions et de la réception de requêtes vers et à partir du service. Si un logLevel n’est pas fourni, la valeur par défaut de HttpLogDetailLevel#NONE est définie.

Note: Il est important de comprendre l’ordre de priorité des API HttpTrait. En particulier, si un HttpPipeline est spécifié, cela est prioritaire sur toutes les autres API du trait et elles seront ignorées. Si aucun n’est HttpPipeline spécifié, un pipeline HTTP est construit en interne en fonction des paramètres fournis à cette caractéristique. En outre, il peut y avoir d’autres API dans les types qui implémentent ce trait qui sont également ignorés si un HttpPipeline est spécifié. Veillez donc à consulter la documentation des types qui implémentent cette caractéristique pour comprendre l’ensemble complet des implications.

Parameters:

logOptions - HttpLogOptions à utiliser lors de l’envoi et de la réception de demandes vers et à partir du service.

Returns:

Objet mis à jour CryptographyClientBuilder .

jsonWebKey

public CryptographyClientBuilder jsonWebKey(JsonWebKey jsonWebKey)

Définit le JsonWebKey à utiliser pour les opérations de chiffrement locales.

Si jsonWebKey est fourni, tous les autres paramètres du générateur sont ignorés.

Parameters:

jsonWebKey - Clé web JSON à utiliser pour les opérations de chiffrement locales.

Returns:

Objet mis à jour CryptographyClientBuilder .

keyIdentifier

public CryptographyClientBuilder keyIdentifier(String keyId)

Définit l’identificateur de clé Azure Key Vault de la clé web JSON à utiliser pour les opérations de chiffrement. Vous devez vérifier que cette URL fait référence à une ressource Key Vault ou HSM managée valide. Pour plus d’informations, reportez-vous à la documentation suivante.

Pour garantir un comportement correct lors de l’exécution d’opérations telles que , et , il est recommandé d’utiliser ou CryptographyAsyncClientCryptographyClient créé pour la version de clé spécifique utilisée pour l’opération inverse correspondante :WrapEncrypt , ou Sign, respectivement.VerifyUnwrapDecrypt

Parameters:

keyId - L’identificateur de clé Azure Key Vault de la clé web JSON stockée dans le coffre de clés.

Returns:

Objet mis à jour CryptographyClientBuilder .

pipeline

public CryptographyClientBuilder pipeline(HttpPipeline pipeline)

Définit le HttpPipeline à utiliser pour le client de service.

Note: Il est important de comprendre l’ordre de priorité des API HttpTrait. En particulier, si un HttpPipeline est spécifié, cela est prioritaire sur toutes les autres API du trait et elles seront ignorées. Si aucun n’est HttpPipeline spécifié, un pipeline HTTP est construit en interne en fonction des paramètres fournis à cette caractéristique. En outre, il peut y avoir d’autres API dans les types qui implémentent ce trait qui sont également ignorés si un HttpPipeline est spécifié. Veillez donc à consulter la documentation des types qui implémentent cette caractéristique pour comprendre l’ensemble complet des implications.

Le keyIdentifier(String keyId) n’est pas ignoré quand pipeline est défini.

Parameters:

pipeline - HttpPipeline à utiliser pour envoyer des demandes de service et recevoir des réponses.

Returns:

Objet mis à jour CryptographyClientBuilder .

retryOptions

public CryptographyClientBuilder retryOptions(RetryOptions retryOptions)

Définit le RetryOptions pour toutes les demandes effectuées via le client.

Note: Il est important de comprendre l’ordre de priorité des API HttpTrait. En particulier, si un HttpPipeline est spécifié, cela est prioritaire sur toutes les autres API du trait et elles seront ignorées. Si aucun n’est HttpPipeline spécifié, un pipeline HTTP est construit en interne en fonction des paramètres fournis à cette caractéristique. En outre, il peut y avoir d’autres API dans les types qui implémentent ce trait qui sont également ignorés si un HttpPipeline est spécifié. Veillez donc à consulter la documentation des types qui implémentent cette caractéristique pour comprendre l’ensemble complet des implications.

La définition de cette valeur s’exclue mutuellement avec l’utilisation de retryPolicy(RetryPolicy retryPolicy).

Parameters:

retryOptions - RetryOptions à utiliser pour toutes les demandes effectuées via le client.

Returns:

Objet mis à jour CryptographyClientBuilder .

retryPolicy

public CryptographyClientBuilder retryPolicy(RetryPolicy retryPolicy)

Définit le RetryPolicy qui est utilisé lors de l’envoi de chaque requête. La stratégie de nouvelle tentative par défaut est utilisée dans le pipeline, si elle n’est pas fournie. La définition de cette valeur s’exclue mutuellement avec l’utilisation de retryOptions(RetryOptions retryOptions).

Parameters:

retryPolicy - L’utilisateur est RetryPolicy appliqué à chaque requête.

Returns:

Objet mis à jour CryptographyClientBuilder .

serviceVersion

public CryptographyClientBuilder serviceVersion(CryptographyServiceVersion version)

Définit le CryptographyServiceVersion qui est utilisé lors de l’envoi de demandes d’API.

Si aucune version de service n’est fournie, la version de service qui sera utilisée sera la dernière version connue du service en fonction de la version de la bibliothèque cliente utilisée. Si aucune version de service n’est spécifiée, la mise à jour vers une version plus récente de la bibliothèque cliente aura pour conséquence de potentiellement passer à une version de service plus récente.

Parameters:

version - CryptographyServiceVersion du service à utiliser lors de l’envoi de demandes.

Returns:

Objet mis à jour CryptographyClientBuilder .

S’applique à