Skip to main content
Astra Automation
Une version plus récente de ce produit est disponible.
La version française est une traduction automatique. La version anglaise prévaut sur la française en cas de divergence.

Modifier un identifiant

PUT /accounts/{account_id}/core/v1/credentials/{credential_id}

Remplace l'intégralité de la ressource stockée par le corps de la requête JSON fourni, tout en préservant les valeurs clés qui ne sont pas modifiables par l'utilisateur.

Paramètres

Nom Type Dans Obligatoire Description

identifiant_compte

chaîne

chemin

Vrai

ID de la ressource de compte conteneur

  • exemple: {{.Account}}

identifiant_id

chaîne

chemin

Vrai

ID de la collection d'identifiants à lister

Corps de la requête

Remplace l'intégralité de la ressource stockée par le corps de la requête JSON fourni, tout en préservant les valeurs clés qui ne sont pas modifiables par l'utilisateur.

Nom Type Obligatoire Description

type

chaîne

Vrai

Type de média de la ressource. Les valeurs définies sont :

  • "application/astra-identifiant"

version

chaîne

Vrai

Version de la ressource. Les valeurs définies sont :

  • "1,0"

  • "1,1"

id

chaîne

Faux

Identifiant unique global de la ressource. Les valeurs définies sont :

  • Conforme au schéma UUIDv4

nom

chaîne

Vrai

Chaîne JSON contenant un nom spécifié par l'utilisateur. Lorsqu'un identifiant est créé pour un utilisateur, le nom sera défini sur l'UUID de cet utilisateur. Les valeurs définies sont :

  • Longueur minimale : 1

  • Longueur maximale : 127

keyType

chaîne

Faux

Chaîne JSON contenant un descripteur de type de validation de données facultatif, spécifié par l'utilisateur, pour le contenu du keyStore. Contraintes de mise à jour étendues :

  • Si un keyType n'existe pas dans la ressource et n'est pas spécifié dans une mise à jour, le keyType ne doit plus exister dans la ressource mise à jour.

  • Si un keyType n'existe pas dans la ressource et est spécifié dans une mise à jour, le keyType doit être ajouté à la ressource et une validation doit être effectuée. Si la validation échoue, la mise à jour échouera.

  • Si un keyType existe dans la ressource et n'est pas spécifié lors d'une mise à jour, le keyType doit être conservé.

  • Si un keyType existe dans la ressource et est spécifié lors d'une mise à jour, et que le keyType spécifié correspond au keyType existant, le keyType doit être préservé.

  • Si un keyType existe dans la ressource et est spécifié dans une mise à jour, et que le keyType spécifié est différent du keyType existant, la mise à jour échouera. Les valeurs définies sont :

  • « generic » - L'identifiant est un ensemble de données génériques. Cela équivaut à ne pas inclure de keyType.

  • La validation étendue est effectuée comme suit :

  • Une ou plusieurs chaînes de caractères doivent exister dans le keyStore.

  • Chaque chaîne de caractères dans le keyStore doit avoir une valeur encodée en base64.

  • "passwordHash" - L'identifiant est un hachage de mot de passe.

  • La validation étendue est effectuée comme suit :

  • Le nom de l'identifiant doit être unique.

  • Le nom de l'identifiant doit être égal à un ID de ressource utilisateur valide.

  • Le nom de l'identifiant ne doit pas être modifié.

  • La ressource utilisateur correspondante doit avoir un "authProvider" de "local".

  • Une chaîne de caractères « en clair » doit exister à l'intérieur du keyStore avec une valeur contenant un mot de passe en clair encodé en base64 :

  • Le mot de passe en clair doit être conforme à la politique de mot de passe du compte.

  • Le mot de passe est stocké sous forme de hachage.

  • Une chaîne « change » doit exister à l’intérieur du keyStore avec une valeur contenant une chaîne encodée en base64 « true » ou « false ».

  • Un identifiant de type passwordHash ne peut être supprimé que si l’identifiant utilisateur indiqué par le nom n’existe pas.

  • "apikey" - L'identifiant est une clé API.

  • La validation étendue est effectuée comme suit :

  • Une chaîne « apikey » doit exister dans le keyStore, avec une valeur contenant une chaîne arbitraire encodée en base64.

  • "kubeconfig" - L'identifiant est un kubeconfig.

  • La validation étendue est effectuée comme suit :

  • Une chaîne « base64 » doit exister dans le keyStore, avec une valeur contenant un fichier kubeconfig JSON encodé en base64.

  • Le fichier kubeconfig ne doit décrire qu'un seul cluster.

  • Aucun autre champ ne peut exister à l'intérieur du keyStore.

  • « certificat » - L'identifiant est un certificat encodé au format PEM

  • La validation étendue est effectuée comme suit :

  • Une chaîne « certificate » doit exister dans le keyStore, avec une valeur contenant un certificat PEM encodé en base64.

  • « privkey » - L'identifiant est une clé privée encodée au format PEM.

  • La validation étendue est effectuée comme suit :

  • Une chaîne « privkey » doit exister dans le keyStore, avec une valeur contenant une clé privée PEM encodée en base64.

  • "s3" - Indique que les identifiants sont destinés à l'accès au Simple Storage Service (S3).

  • La validation étendue est effectuée comme suit :

  • Une chaîne « accessKey » doit exister dans la keyStore avec une valeur contenant une clé d'accès S3 encodée en base64.

  • Une chaîne « accessSecret » doit exister dans la keyStore avec une valeur contenant un secret d'accès S3 encodé en base64.

keyStore

"keyStore"

Vrai

Objet JSON contenant des chaînes JSON. Chaque chaîne dans le keyStore représente une partie de l’identifiant. Le nom de chaque chaîne représente la partie de l’identifiant, et la clé-valeur correspondante stocke la valeur de cette partie de l’identifiant au format base64. Les valeurs définies sont :

  • Conforme au schéma de données encodées en base64 Aucune limite n'est imposée à la longueur des chaînes.

valide

chaîne

Faux

Chaîne JSON indiquant si l'identifiant est valide pour utilisation. La valeur par défaut, si elle est omise, est "true". Les valeurs définies sont :

  • « true » – L’identifiant est utilisable.

  • « false » – L'identifiant ne doit pas être utilisé.

validFromTimestamp

chaîne

Faux

Chaîne JSON contenant un horodatage indiquant quand l’identifiant est valide. Ceux-ci sont utilisés pour la rotation des identifiants. Les valeurs définies sont :

  • Conforme au schéma de date et d'heure ISO-8601

validUntilTimestamp

chaîne

Faux

Chaîne JSON contenant un horodatage indiquant quand l’identifiant n’est plus valide. Ceux-ci sont utilisés pour la rotation des identifiants. Les valeurs définies sont :

  • Conforme au schéma de date et d'heure ISO-8601

les métadonnées

"type_astra_metadata_update"

Faux

Métadonnées spécifiques au client et au service associées à la ressource. Les valeurs définies sont :

  • Conforme au schéma de métadonnées Astra. Si aucune étiquette n'est spécifiée lors de la création, un objet de métadonnées sera créé sans étiquette. Si aucune étiquette n'est spécifiée lors de la mise à jour, les étiquettes de l'objet de métadonnées, creationTimestamp et createdBy, seront conservées sans modification.

Exemple de requête
{
  "type": "application/astra-credential",
  "version": "1.1",
  "name": "oldCert",
  "keyStore": {
    "privKey": "SGkh",
    "pubKey": "VGhpcyBpcyBhbiBleGFtcGxlLg=="
  }
}

Réponse

Status: 204, Indicates if the credential resource was updated.

Réponse

Status: 403, Forbidden
Nom Type Obligatoire Description

type

chaîne

Vrai

titre

chaîne

Vrai

détail

chaîne

Vrai

statut

chaîne

Vrai

identifiant de corrélation

chaîne

Faux

Exemple de réponse
{
  "type": "https://astra.netapp.io/problems/11",
  "title": "Operation not permitted",
  "detail": "The requested operation isn't permitted.",
  "status": "403"
}

Réponse

Status: 406, Not acceptable
Nom Type Obligatoire Description

type

chaîne

Vrai

titre

chaîne

Vrai

détail

chaîne

Vrai

statut

chaîne

Vrai

identifiant de corrélation

chaîne

Faux

Exemple de réponse
{
  "type": "https://astra.netapp.io/problems/32",
  "title": "Unsupported content type",
  "detail": "The response can't be returned in the requested format.",
  "status": "406"
}

Réponse

Status: 500, Internal server error
Nom Type Obligatoire Description

type

chaîne

Vrai

titre

chaîne

Vrai

détail

chaîne

Vrai

statut

chaîne

Vrai

identifiant de corrélation

chaîne

Faux

Exemple de réponse
{
  "type": "https://astra.netapp.io/problems/34",
  "title": "Internal server error",
  "detail": "The server was unable to process this request.",
  "status": "500"
}

Réponse

Status: 412, Precondition failed
Nom Type Obligatoire Description

type

chaîne

Vrai

titre

chaîne

Vrai

détail

chaîne

Vrai

statut

chaîne

Vrai

identifiant de corrélation

chaîne

Faux

Exemple de réponse
{
  "type": "https://astra.netapp.io/problems/38",
  "title": "Precondition not met",
  "detail": "The conditional headers aren't satisfied.",
  "status": "412"
}

Réponse

Status: 409, Conflict
Nom Type Obligatoire Description

type

chaîne

Vrai

titre

chaîne

Vrai

détail

chaîne

Vrai

statut

chaîne

Vrai

identifiant de corrélation

chaîne

Faux

Exemple de réponse
{
  "type": "https://astra.netapp.io/problems/39",
  "title": "Credential exists",
  "detail": "A credential of this type already exists.",
  "status": "409"
}

Réponse

Status: 502, Bad gateway
Nom Type Obligatoire Description

type

chaîne

Vrai

titre

chaîne

Vrai

détail

chaîne

Vrai

statut

chaîne

Vrai

identifiant de corrélation

chaîne

Faux

Exemple de réponse
{
  "type": "https://astra.netapp.io/problems/40",
  "title": "Communication failed",
  "detail": "Communication wasn't made with downstream services.",
  "status": "502"
}

Réponse

Status: 503, Service unavailable
Nom Type Obligatoire Description

type

chaîne

Vrai

titre

chaîne

Vrai

détail

chaîne

Vrai

statut

chaîne

Vrai

identifiant de corrélation

chaîne

Faux

Exemple de réponse
{
  "type": "https://astra.netapp.io/problems/41",
  "title": "Service not ready",
  "detail": "Currently, the service can't respond to this request.",
  "status": "503"
}

Erreur

Status: 400, Bad request
Nom Type Obligatoire Description

type

chaîne

Vrai

titre

chaîne

Vrai

détail

chaîne

Vrai

statut

chaîne

Vrai

identifiant de corrélation

chaîne

Faux

invalidParams

tableau["invalidParams"]

Faux

Liste des paramètres de requête invalides

Exemple de réponse d'erreur
{
  "type": "https://astra.netapp.io/problems/7",
  "title": "Invalid JSON payload",
  "detail": "The request body is not valid JSON.",
  "status": "400"
}

Définitions

Voir les définitions

keyStore

Objet JSON contenant des chaînes JSON. Chaque chaîne dans le keyStore représente une partie de l’identifiant. Le nom de chaque chaîne représente la partie de l’identifiant, et la clé-valeur correspondante stocke la valeur de cette partie de l’identifiant au format base64. Les valeurs définies sont :

  • Conforme au schéma de données encodées en base64 Aucune limite n'est imposée à la longueur des chaînes.

Association de chaînes de caractères à des chaînes

type_astra_label

Nom Type Obligatoire Description

nom

chaîne

Vrai

valeur

chaîne

Vrai

type_astra_metadata_update

Métadonnées spécifiques au client et au service associées à la ressource. Les valeurs définies sont :

  • Conforme au schéma de métadonnées Astra. Si aucune étiquette n'est spécifiée lors de la création, un objet de métadonnées sera créé sans étiquette. Si aucune étiquette n'est spécifiée lors de la mise à jour, les étiquettes de l'objet de métadonnées, creationTimestamp et createdBy, seront conservées sans modification.

Nom Type Obligatoire Description

étiquettes

tableau["type_astra_label"]

Faux

CréationTimestamp

chaîne

Faux

ModificationTimestamp

chaîne

Faux

CreatedBy

chaîne

Faux

modifiedBy

chaîne

Faux

invalidFields

Nom Type Obligatoire Description

nom

chaîne

Vrai

Nom du champ invalide du corps de la requête

raison

chaîne

Vrai

Raison pour laquelle le champ du corps de la requête est invalide

invalidParams

Nom Type Obligatoire Description

nom

chaîne

Vrai

Nom du paramètre de requête invalide

raison

chaîne

Vrai

Raison pour laquelle le paramètre de requête est invalide