Skip to main content
Astra Automation
Se proporciona el idioma español mediante traducción automática para su comodidad. En caso de alguna inconsistencia, el inglés precede al español.

Modificar una credencial

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

Sustituye todo el recurso almacenado por el cuerpo de la solicitud JSON suministrado mientras conserva los valores clave que no son modificables por el usuario.

Parámetros

Nombre Tipo En Obligatorio Descripción

account_id

cadena

ruta

Verdadero

ID del recurso de cuenta que lo contiene

  • ejemplo: {{.Account}}

credential_id

cadena

ruta

Verdadero

ID de la colección de credenciales a listar

Cuerpo de la solicitud

Sustituye todo el recurso almacenado por el cuerpo de la solicitud JSON suministrado mientras conserva los valores clave que no son modificables por el usuario.

Nombre Tipo Obligatorio Descripción

tipo

cadena

Verdadero

Tipo de medio del recurso. Los valores definidos son:

  • "application/astra-credential"

versión

cadena

Verdadero

Versión del recurso. Los valores definidos son:

  • "1,0"

  • "1,1"

id

cadena

Falso

Identificador único global del recurso. Los valores definidos son:

  • Cumple con el esquema UUIDv4

nombre

cadena

Verdadero

Cadena JSON que contiene un nombre especificado por el usuario. Cuando se crea una credencial para un usuario, el nombre se establecerá con el UUID de ese usuario. Los valores definidos son:

  • Longitud mínima: 1

  • Longitud máxima: 127

keyType

cadena

Falso

Cadena JSON que contiene un descriptor opcional del tipo de validación de datos especificado por el usuario para el contenido de keyStore. Restricciones de actualización ampliadas:

  • Si un keyType no existe en el recurso y no se especifica en una actualización, el keyType no debe seguir existiendo en el recurso actualizado.

  • Si un keyType no existe en el recurso y se especifica en una actualización, el keyType debe añadirse al recurso y debe realizarse la validación. Si la validación falla, la actualización fallará.

  • Si existe un keyType en el recurso y no se especifica en una actualización, el keyType debe conservarse.

  • Si existe un keyType en el recurso y se especifica en una actualización, y el keyType especificado coincide con el keyType existente, el keyType debe conservarse.

  • Si existe un keyType en el recurso y se especifica en una actualización, y el keyType especificado es diferente del keyType existente, la actualización fallará. Los valores definidos son:

  • "generic" - La credencial es una colección genérica de datos. Esto equivale a no incluir un keyType.

  • La validación ampliada se realiza del siguiente modo:

  • Debe existir una o varias cadenas en el keyStore.

  • Cada cadena en keyStore debe tener un valor codificado en base64.

  • "passwordHash" - La credencial es un hash de contraseña.

  • La validación ampliada se realiza del siguiente modo:

  • El nombre de la credencial debe ser único.

  • El nombre de la credencial debe ser igual a un ID de recurso de usuario válido.

  • El nombre de la credencial no debe alterarse.

  • El recurso de usuario correspondiente debe tener un "authProvider" de "local".

  • Debe existir una cadena "cleartext" dentro de keyStore con un valor que contenga una contraseña en texto claro codificada en base64:

  • El texto claro de la contraseña debe ajustarse a la política de contraseñas de la cuenta.

  • La contraseña se almacena como un hash.

  • Debe existir una cadena "change" dentro de keyStore con un valor que contenga una cadena codificada en base64 "true" o "false".

  • Una credencial del tipo passwordHash solo puede eliminarse si el ID de usuario indicado por el nombre no existe.

  • "apikey" - La credencial es una clave API.

  • La validación ampliada se realiza del siguiente modo:

  • Debe existir una cadena "apikey" dentro de keyStore, con un valor que contenga una cadena arbitraria codificada en base64.

  • "kubeconfig" - la credencial es una kubeconfig.

  • La validación ampliada se realiza del siguiente modo:

  • Debe existir una cadena "base64" dentro de keyStore, con un valor que contenga un archivo kubeconfig JSON codificado en base64.

  • El archivo kubeconfig solo debe describir un único clúster.

  • No pueden existir otros campos dentro de keyStore.

  • "certificado" - la credencial es un certificado codificado PEM

  • La validación ampliada se realiza del siguiente modo:

  • Debe existir una cadena "certificate" dentro de keyStore, con un valor que contenga un certificado PEM codificado en base64.

  • "privkey" - La credencial es una clave privada codificada en PEM.

  • La validación ampliada se realiza del siguiente modo:

  • Debe existir una cadena "privkey" dentro de keyStore, con un valor que contenga una clave privada PEM codificada en base64.

  • "s3" - Indica que las credenciales son para acceso a Simple Storage Service (S3).

  • La validación ampliada se realiza del siguiente modo:

  • Debe existir una cadena ""accessKey"" dentro de keyStore con un valor que contenga una clave de acceso S3 codificada en base64.

  • Debe existir una cadena ""accessSecret"" dentro de keyStore con un valor que contenga un secreto de acceso S3 codificado en base64.

keyStore

"keyStore"

Verdadero

Objeto JSON que contiene cadenas JSON. Cada cadena en keyStore representa una parte de la credencial. El nombre de cada cadena representa la parte de la credencial, y la clave-valor correspondiente almacena el valor de esa parte de la credencial en formato base64. Los valores definidos son:

  • Se ajusta al esquema de datos codificados en base64 No se imponen límites a la longitud de las cadenas.

válido

cadena

Falso

Cadena JSON que describe si la credencial es válida para su uso. El valor por defecto, si se omite, es "true". Los valores definidos son:

  • "true" - La credencial es apta para su uso.

  • "false" - La credencial no debe utilizarse.

validFromTimestamp

cadena

Falso

Cadena JSON que contiene una marca de tiempo que indica cuándo es válida la credencial. Se utilizan para la rotación de credenciales. Los valores definidos son:

  • Cumple con el esquema de fecha y hora ISO-8601

validUntilTimestamp

cadena

Falso

Cadena JSON que contiene una marca de tiempo que indica cuándo deja de ser válida la credencial. Se utilizan para la rotación de credenciales. Los valores definidos son:

  • Cumple con el esquema de fecha y hora ISO-8601

metadatos

"type_astra_metadatos_update"

Falso

Metadatos especificados por el cliente y el servicio asociados con el recurso. Los valores definidos son:

  • Conforme al esquema de metadatos de Astra. Si no se especifica al crear, se creará un objeto de metadatos sin etiquetas. Si no se especifica al actualizar, las etiquetas del objeto de metadatos, creationTimestamp y createdBy, se conservarán sin modificaciones.

Ejemplo de solicitud
{
  "type": "application/astra-credential",
  "version": "1.1",
  "name": "oldCert",
  "keyStore": {
    "privKey": "SGkh",
    "pubKey": "VGhpcyBpcyBhbiBleGFtcGxlLg=="
  }
}

Respuesta

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

Respuesta

Status: 403, Forbidden
Nombre Tipo Obligatorio Descripción

tipo

cadena

Verdadero

título

cadena

Verdadero

detalle

cadena

Verdadero

estado

cadena

Verdadero

correlationID

cadena

Falso

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

Respuesta

Status: 406, Not acceptable
Nombre Tipo Obligatorio Descripción

tipo

cadena

Verdadero

título

cadena

Verdadero

detalle

cadena

Verdadero

estado

cadena

Verdadero

correlationID

cadena

Falso

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

Respuesta

Status: 500, Internal server error
Nombre Tipo Obligatorio Descripción

tipo

cadena

Verdadero

título

cadena

Verdadero

detalle

cadena

Verdadero

estado

cadena

Verdadero

correlationID

cadena

Falso

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

Respuesta

Status: 412, Precondition failed
Nombre Tipo Obligatorio Descripción

tipo

cadena

Verdadero

título

cadena

Verdadero

detalle

cadena

Verdadero

estado

cadena

Verdadero

correlationID

cadena

Falso

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

Respuesta

Status: 409, Conflict
Nombre Tipo Obligatorio Descripción

tipo

cadena

Verdadero

título

cadena

Verdadero

detalle

cadena

Verdadero

estado

cadena

Verdadero

correlationID

cadena

Falso

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

Respuesta

Status: 502, Bad gateway
Nombre Tipo Obligatorio Descripción

tipo

cadena

Verdadero

título

cadena

Verdadero

detalle

cadena

Verdadero

estado

cadena

Verdadero

correlationID

cadena

Falso

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

Respuesta

Status: 503, Service unavailable
Nombre Tipo Obligatorio Descripción

tipo

cadena

Verdadero

título

cadena

Verdadero

detalle

cadena

Verdadero

estado

cadena

Verdadero

correlationID

cadena

Falso

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

Error

Status: 400, Bad request
Nombre Tipo Obligatorio Descripción

tipo

cadena

Verdadero

título

cadena

Verdadero

detalle

cadena

Verdadero

estado

cadena

Verdadero

correlationID

cadena

Falso

invalidParams

matriz["invalidParams"]

Falso

Lista de parámetros de consulta no válidos

Ejemplo de respuesta de error
{
  "type": "https://astra.netapp.io/problems/7",
  "title": "Invalid JSON payload",
  "detail": "The request body is not valid JSON.",
  "status": "400"
}

Definiciones

Ver definiciones

keyStore

Objeto JSON que contiene cadenas JSON. Cada cadena en keyStore representa una parte de la credencial. El nombre de cada cadena representa la parte de la credencial, y la clave-valor correspondiente almacena el valor de esa parte de la credencial en formato base64. Los valores definidos son:

  • Se ajusta al esquema de datos codificados en base64 No se imponen límites a la longitud de las cadenas.

Asignación hash de cadenas a cadena

etiqueta_tipo_astra

Nombre Tipo Obligatorio Descripción

nombre

cadena

Verdadero

valor

cadena

Verdadero

type_astra_metadatos_update

Metadatos especificados por el cliente y el servicio asociados con el recurso. Los valores definidos son:

  • Conforme al esquema de metadatos de Astra. Si no se especifica al crear, se creará un objeto de metadatos sin etiquetas. Si no se especifica al actualizar, las etiquetas del objeto de metadatos, creationTimestamp y createdBy, se conservarán sin modificaciones.

Nombre Tipo Obligatorio Descripción

etiquetas

array["etiqueta_tipo_astra"]

Falso

CreationTimestamp

cadena

Falso

Modificación.Marca de hora

cadena

Falso

CreatedBy

cadena

Falso

modifiedBy

cadena

Falso

invalidFields

Nombre Tipo Obligatorio Descripción

nombre

cadena

Verdadero

Nombre del campo no válido del cuerpo de la solicitud

motivo

cadena

Verdadero

Motivo por el que el campo del cuerpo de la solicitud no es válido

invalidParams

Nombre Tipo Obligatorio Descripción

nombre

cadena

Verdadero

Nombre del parámetro de consulta no válido

motivo

cadena

Verdadero

Razón por la que el parámetro de consulta no es válido