Skip to main content
Astra Automation
O português é fornecido por meio de tradução automática para sua conveniência. O inglês precede o português em caso de inconsistências.

Modificar uma credencial

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

Substitui todo o recurso armazenado pelo corpo da solicitação JSON fornecido, preservando os valores-chave que não podem ser modificados pelo usuário.

Parâmetros

Nome Tipo Em Obrigatório Descrição

id_da_conta

string

caminho

Verdadeiro

ID do recurso de conta que o contém

  • exemplo: {{.Account}}

credencial_id

string

caminho

Verdadeiro

ID da coleção de credenciais a ser listada

Corpo da solicitação

Substitui todo o recurso armazenado pelo corpo da solicitação JSON fornecido, preservando os valores-chave que não podem ser modificados pelo usuário.

Nome Tipo Obrigatório Descrição

tipo

string

Verdadeiro

Tipo de mídia do recurso. Os valores definidos são:

  • "application/astra-credential"

versão

string

Verdadeiro

Versão do recurso. Os valores definidos são:

  • "1,0"

  • "1,1"

id

string

Falso

Identificador globalmente único do recurso. Os valores definidos são:

  • Em conformidade com o esquema UUIDv4

nome

string

Verdadeiro

String JSON contendo um nome especificado pelo usuário. Quando uma credencial é criada para um usuário, o nome será definido como o UUID desse usuário. Os valores definidos são:

  • Comprimento mínimo: 1

  • Comprimento máximo: 127

keyType

string

Falso

String JSON contendo um descritor de tipo de validação de dados opcional especificado pelo usuário para o conteúdo do keyStore. Restrições de atualização estendidas:

  • Se um keyType não existir no recurso e não for especificado em uma atualização, o keyType não deverá continuar a existir no recurso atualizado.

  • Se um keyType não existir no recurso e for especificado em uma atualização, o keyType deverá ser adicionado ao recurso e a validação deverá ser realizada. Se a validação falhar, a atualização falhará.

  • Se um keyType existir no recurso e não for especificado em uma atualização, o keyType deve ser preservado.

  • Se um keyType existir no recurso e for especificado em uma atualização, e o keyType especificado corresponder ao keyType existente, o keyType deve ser preservado.

  • Se um keyType existir no recurso e for especificado em uma atualização, e o keyType especificado for diferente do keyType existente, a atualização falhará. Os valores definidos são:

  • "genérico" - A credencial é uma coleção genérica de dados. Isso é equivalente a não incluir um keyType.

  • A validação estendida é realizada da seguinte forma:

  • Uma ou mais strings devem existir no keyStore.

  • Cada string no keyStore deve ter um valor codificado em base64.

  • "passwordHash" - A credencial é um hash de senha.

  • A validação estendida é realizada da seguinte forma:

  • O nome da credencial deve ser único.

  • O nome da credencial deve ser igual a um ID de recurso de usuário válido.

  • O nome da credencial não deve ser alterado.

  • O recurso de usuário correspondente deve ter um "authProvider" de "local".

  • Deve existir uma string "texto claro" dentro do keyStore com um valor contendo uma senha em texto claro codificada em base64:

  • A senha em texto simples deve estar em conformidade com a política de senhas da conta.

  • A senha é armazenada como um hash.

  • Deve existir uma string "change" dentro do keyStore com um valor contendo uma string codificada em base64 "true" ou "false".

  • Uma credencial do tipo passwordHash só pode ser excluída se o ID do usuário indicado pelo nome não existir.

  • "apikey" - A credencial é uma chave de API.

  • A validação estendida é realizada da seguinte forma:

  • Deve existir uma string "apikey" dentro do keyStore, com um valor contendo uma string arbitrária codificada em base64.

  • "kubeconfig" - A credencial é um kubeconfig.

  • A validação estendida é realizada da seguinte forma:

  • Deve existir uma string "base64" dentro do keyStore, com um valor contendo um arquivo kubeconfig JSON codificado em base64.

  • O arquivo kubeconfig deve descrever apenas um único cluster.

  • Não podem existir outros campos dentro do keyStore.

  • "certificado" - A credencial é um certificado codificado em PEM

  • A validação estendida é realizada da seguinte forma:

  • Deve existir uma string de "certificate" dentro do keyStore, com um valor contendo um certificado PEM codificado em base64.

  • "privkey" - A credencial é uma chave privada codificada em PEM.

  • A validação estendida é realizada da seguinte forma:

  • Deve existir uma string "privkey" dentro do keyStore, com um valor contendo uma chave privada PEM codificada em base64.

  • "s3" - Indica que as credenciais são para acesso ao Simple Storage Service (S3).

  • A validação estendida é realizada da seguinte forma:

  • Uma string ""accessKey"" deve existir dentro do keyStore com um valor contendo uma chave de acesso S3 codificada em base64.

  • Uma string ""accessSecret"" deve existir dentro do keyStore com um valor contendo um segredo de acesso S3 codificado em base64.

keyStore

"keyStore"

Verdadeiro

Objeto JSON contendo strings JSON. Cada string no keyStore representa parte da credencial. O nome de cada string representa a parte da credencial, e o par chave-valor correspondente armazena o valor dessa parte da credencial em formato base64. Os valores definidos são:

  • Está em conformidade com o esquema de dados codificados em base64. Não há limites impostos ao comprimento das strings.

válido

string

Falso

String JSON que descreve se a credencial é válida para uso. Valor padrão, se omitido, é "true". Os valores definidos são:

  • "verdadeiro" - A credencial está apta para uso.

  • "falso" - A credencial não deve ser usada.

validFromTimestamp

string

Falso

String JSON contendo um carimbo de data/hora indicando quando a credencial é válida. Esses dados são usados para rotação de credenciais. Os valores definidos são:

  • Em conformidade com o esquema de data e hora ISO-8601

validUntilTimestamp

string

Falso

String JSON contendo um registro de data e hora indicando quando a credencial deixa de ser válida. Esses registros são usados para rotação de credenciais. Os valores definidos são:

  • Em conformidade com o esquema de data e hora ISO-8601

metadados

"type_astra_metadados_update"

Falso

Metadados especificados pelo cliente e pelo serviço associados ao recurso. Os valores definidos são:

  • Conforme o esquema de metadados Astra. Se não for especificado na criação, um objeto de metadados será criado sem rótulos. Se não for especificado na atualização, os rótulos do objeto de metadados, creationTimestamp e createdBy, serão preservados sem modificação.

Exemplo de solicitação
{
  "type": "application/astra-credential",
  "version": "1.1",
  "name": "oldCert",
  "keyStore": {
    "privKey": "SGkh",
    "pubKey": "VGhpcyBpcyBhbiBleGFtcGxlLg=="
  }
}

Resposta

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

Resposta

Status: 403, Forbidden
Nome Tipo Obrigatório Descrição

tipo

string

Verdadeiro

título

string

Verdadeiro

detalhe

string

Verdadeiro

status

string

Verdadeiro

ID de correlação

string

Falso

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

Resposta

Status: 406, Not acceptable
Nome Tipo Obrigatório Descrição

tipo

string

Verdadeiro

título

string

Verdadeiro

detalhe

string

Verdadeiro

status

string

Verdadeiro

ID de correlação

string

Falso

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

Resposta

Status: 500, Internal server error
Nome Tipo Obrigatório Descrição

tipo

string

Verdadeiro

título

string

Verdadeiro

detalhe

string

Verdadeiro

status

string

Verdadeiro

ID de correlação

string

Falso

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

Resposta

Status: 412, Precondition failed
Nome Tipo Obrigatório Descrição

tipo

string

Verdadeiro

título

string

Verdadeiro

detalhe

string

Verdadeiro

status

string

Verdadeiro

ID de correlação

string

Falso

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

Resposta

Status: 409, Conflict
Nome Tipo Obrigatório Descrição

tipo

string

Verdadeiro

título

string

Verdadeiro

detalhe

string

Verdadeiro

status

string

Verdadeiro

ID de correlação

string

Falso

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

Resposta

Status: 502, Bad gateway
Nome Tipo Obrigatório Descrição

tipo

string

Verdadeiro

título

string

Verdadeiro

detalhe

string

Verdadeiro

status

string

Verdadeiro

ID de correlação

string

Falso

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

Resposta

Status: 503, Service unavailable
Nome Tipo Obrigatório Descrição

tipo

string

Verdadeiro

título

string

Verdadeiro

detalhe

string

Verdadeiro

status

string

Verdadeiro

ID de correlação

string

Falso

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

Erro

Status: 400, Bad request
Nome Tipo Obrigatório Descrição

tipo

string

Verdadeiro

título

string

Verdadeiro

detalhe

string

Verdadeiro

status

string

Verdadeiro

ID de correlação

string

Falso

invalidParams

array["invalidParams"]

Falso

Lista de parâmetros de consulta inválidos

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

Definições

Ver definições

keyStore

Objeto JSON contendo strings JSON. Cada string no keyStore representa parte da credencial. O nome de cada string representa a parte da credencial, e o par chave-valor correspondente armazena o valor dessa parte da credencial em formato base64. Os valores definidos são:

  • Está em conformidade com o esquema de dados codificados em base64. Não há limites impostos ao comprimento das strings.

Mapeamento de hash de strings para string

tipo_astra_label

Nome Tipo Obrigatório Descrição

nome

string

Verdadeiro

valor

string

Verdadeiro

type_astra_metadados_update

Metadados especificados pelo cliente e pelo serviço associados ao recurso. Os valores definidos são:

  • Conforme o esquema de metadados Astra. Se não for especificado na criação, um objeto de metadados será criado sem rótulos. Se não for especificado na atualização, os rótulos do objeto de metadados, creationTimestamp e createdBy, serão preservados sem modificação.

Nome Tipo Obrigatório Descrição

etiquetas

array["tipo_astra_label"]

Falso

CriaçãoTimestamp

string

Falso

Alteração do Timestamp

string

Falso

CreatedBy

string

Falso

modifiedBy

string

Falso

invalidFields

Nome Tipo Obrigatório Descrição

nome

string

Verdadeiro

Nome do campo inválido no corpo da requisição

razão

string

Verdadeiro

Motivo pelo qual o campo do corpo da solicitação é inválido

invalidParams

Nome Tipo Obrigatório Descrição

nome

string

Verdadeiro

Nome do parâmetro de consulta inválido

razão

string

Verdadeiro

Motivo pelo qual o parâmetro de consulta é inválido