Retornar uma configuração para Encryption at Rest usando chaves personalizadas gerenciadas pelo cliente para um projeto

OBTER /api/atlas/v2/groups/{groupId}/encryptionAtRest

Retorna a configuração da criptografia em descanso usando as chaves que você gerencia por meio do provedor de nuvem. O MongoDB Cloud criptografa todo o armazenamento, mesmo que você não use seu próprio gerenciamento de chaves. Esse recurso requer que a conta de serviço ou a chave de API solicitante tenha a função de proprietário do projeto.

LIMITADO A M10 OU SUPERIOR: o MongoDB Cloud limita esse recurso às camadas de clusters dedicados M10 ou superior.

parâmetros de caminho

  • groupId string Obrigatório

    Sequência única de 24dígitos hexadecimais que identifica seu projeto. Use o endpoint /groups para extrair todos os projetos aos quais o usuário autenticado tem acesso.

    AVISO: grupos e projetos são termos sinônimos. O ID do seu grupo é igual ao ID do seu projeto. Para grupos existentes, o ID do grupo/projeto permanece o mesmo. O recurso e os endpoints correspondentes usam o termo grupos.

    O formato deve corresponder ao seguinte padrão: ^([a-f0-9]{24})$.

parâmetros de query

  • envelope booleano

    Sinalizador que indica se o aplicativo empacota a resposta em um objeto JSON envelope. Alguns clientes de API não podem acessar os cabeçalhos de resposta HTTP ou o código de status. Para corrigir isso, defina envelope=true na consulta. Os endpoints que retornam uma lista de resultados usam o objeto de resultados como um envelope. O aplicativo adiciona o parâmetro de status ao corpo da resposta.

    O valor padrão é false.

  • pretty booleano

    Sinalizador que indica se o corpo da resposta deve estar no formato prettyprint.

    O valor padrão é false.

    Prettyprint

Respostas

  • 200 application/vnd.atlas.2023-01-01+json

    OK

    Ocultar atributos de resposta Mostrar atributos de resposta objeto
    • AWS KMS objeto

      Detalhes de configuração KMS da Amazon Web Services (AWS) e conjunto de configurações de criptografia em repouso para o projeto especificado.

      Serviço de gerenciamento de chaves de serviços web da Amazon
      Ocultar atributos do AWSKms Mostrar atributos do AWSKms objeto
      • accessKeyID string

        String alfanumérica exclusiva que identifica uma chave de acesso do Gerenciamento de Identidade e Acesso (IAM) com as permissões necessárias para acessar sua Chave Mestra do Cliente (CMK) do Amazon Web Services (AWS).

        O comprimento mínimo é 16, o comprimento máximo é 128.

      • customerMasterKeyID string

        String alfanumérica exclusiva que identifica a chave mestra do cliente (CMK) da Amazon Web Services (AWS) que você usou para criptografar e descriptografar as chaves mestras do MongoDB .

        O comprimento mínimo é 1, o comprimento máximo é 2048.

      • habilitado booleano

        Sinalizador que indica se alguém habilitou a criptografia em descanso para o projeto especificado por meio do Amazon Web Services (AWS) Key Management Service (KMS). Para desativar a criptografia em descanso usando o gerenciamento de chaves do cliente e remover os detalhes de configuração, passe apenas esse parâmetro com um valor de false.

      • região string

        Local físico onde a MongoDB Cloud implementa seus nós de cluster MongoDB hospedados na AWS. A região escolhida pode afetar a latência da rede para os clientes que acessam seus bancos de dados. Quando o MongoDB Cloud implementa um cluster dedicado, ele verifica se existe uma conexão VPC ou VPC para esse provedor e região. Caso contrário, o MongoDB Cloud os cria como parte da implantação. O MongoDB Cloud atribui à VPC um bloco CIDR. Para limitar uma nova conexão de emparelhamento da VPC a um bloco e região CIDR, crie primeiro a conexão. Implemente o cluster após o início da conexão.

        Os valores são US_GOV_WEST_1, US_GOV_EAST_1, US_EAST_1, US_EAST_2, US_WEST_1, US_WEST_2, CA_CENTRAL_1, EU_NORTH_1, EU_WEST_1, EU_WEST_2, EU_WEST_3, EU_CENTRAL_1, EU_CENTRAL_2, AP_EAST_1, AP_NORTHEAST_1, AP_NORTHEAST_2, AP_NORTHEAST_3, AP_SOUTHEAST_1, AP_SOUTHEAST_2, AP_SOUTHEAST_3, AP_SOUTHEAST_4, AP_SOUTH_1, AP_SOUTH_2, SA_EAST_1, CN_NORTH_1, CN_NORTHWEST_1, ME_SOUTH_1, ME_CENTRAL_1, AF_SOUTH_1, EU_SOUTH_1, EU_SOUTH_2, IL_CENTRAL_1, CA_WEST_1, AP_SOUTHEAST_5, AP_SOUTHEAST_7, MX_CENTRAL_1 ou GLOBAL.

      • requirePrivateNetwork booleano

        Habilite a conexão com o Amazon Web Services (AWS) Key Management Service (KMS) por meio de redes privadas.

      • válido booleano

        Sinalizador que indica se a chave de criptografia do Amazon Web Services (AWS) Key Management Service (KMS) pode criptografar e descriptografar dados.

    • AzureKeyVault objeto

      Detalhes que definem a configuração da Encryption at Rest usando o Azure Key Vault (AKV).

      Azure Key Vault
      Ocultar atributos do AzureKeyVault Mostrar atributos do azureKeyVault objeto
      • azureEnvironment string

        Ambiente Azure no qual as credenciais da sua conta residem.

        Os valores são AZURE ou AZURE_CHINA.

      • clientID string(uuid)

        Cadeia de caracteres exclusiva 36-hexadecimal que identifica um aplicação Azure associado ao seu inquilino do Azure Active Directory.

      • habilitado booleano

        Sinalizador que indica se alguém habilitou a criptografia em descanso para o projeto especificado. Para desativar a criptografia em descanso usando o gerenciamento de chaves do cliente e remover os detalhes de configuração, passe apenas esse parâmetro com um valor de false.

      • keyIdentifier string

        Endereço da Web com uma chave exclusiva que se identifica para seu Azure Key Vault.

      • keyVaultName string

        String exclusiva que identifica o Azure Key Vault que contém sua chave. Este campo não pode ser modificado quando você habilita e configura conexões de endpoint privadas para o Azure Key Vault.

      • requirePrivateNetwork booleano

        Habilite a conexão com seu Azure Key Vault por meio de rede privada.

      • Nome do Grupo de Recursos string

        Nome do grupo de recursos do Azure que contém seu Azure Key Vault. Este campo não pode ser modificado quando você habilita e configura conexões de endpoint privadas para o Azure Key Vault.

      • ID da assinatura string(uuid)

        String exclusiva de 36caracteres hexadecimais que identifica sua assinatura do Azure. Este campo não pode ser modificado quando você habilita e configura conexões de endpoint privadas para o Azure Key Vault.

      • tenantID string(uuid)

        Cadeia exclusiva de caracteres 36-hexadecimal que identifica o locatário do Azure Active Directory dentro de sua assinatura do Azure.

      • válido booleano

        Sinalizador que indica se a chave de criptografia do Azure pode criptografar e descriptografar dados.

    • enabledForSearchNodes booleano

      Sinalizador que indica se a criptografia em descanso para Nós de pesquisa dedicados está habilitada no projeto especificado.

    • googleCloudKms objeto

      Detalhes que definem a configuração da criptografia em repouso usando o Google Cloud Key Management Service (KMS).

      Serviço de gerenciamento de chaves do Google Cloud
      Ocultar atributos do googleCloudKms Mostrar atributos do googleCloudKms objeto
      • habilitado booleano

        Sinalizador que indica se alguém habilitou a criptografia em descanso para o projeto especificado. Para desativar a criptografia em descanso usando o gerenciamento de chaves do cliente e remover os detalhes de configuração, passe apenas esse parâmetro com um valor de false.

      • keyVersionResourceID string

        Caminho do recurso que exibe o ID do recurso da versão principal para seu Google Cloud KMS.

      • roleId string

        String exclusiva de 24dígitos hexadecimais que identifica a função de acesso do provedor do Google Cloud que o MongoDB Cloud usa para acessar o Google Cloud KMS.

        O formato deve corresponder ao seguinte padrão: ^([a-f0-9]{24})$.

      • válido booleano

        Sinalizador que indica se a chave de criptografia do Google Cloud Key Management Service (KMS) pode criptografar e descriptografar dados.

  • 401 aplicação/json

    Não autorizado.

    Ocultar atributos de resposta Mostrar atributos de resposta objeto
    • badRequestDetail objeto

      Detalhes da solicitação inválida.

      Ocultar atributo ruimRequestDetail Mostrar atributo ruimRequestDetail objeto
      • Campos array[objeto]

        Descreve todas as violações em uma solicitação do cliente .

        Ocultar atributos de campos Mostrar atributos dos campos objeto
        • Descrição string Obrigatório

          Uma descrição do motivo pelo qual o elemento de solicitação é incorreto.

        • Campo string Obrigatório

          Um caminho que leva a um campo no corpo da solicitação.

    • detalhe string

      Descreve as condições ou os motivos específicos que causam cada tipo de erro.

    • Erro integer(int32) Obrigatório

      O código de status HTTP retornado com este erro.

      Documentação externa
    • Código de erro string Obrigatório

      Código de erro do aplicativo retornado com esse erro.

    • Parâmetros array[objeto]

      Parâmetros usados para fornecer mais informações sobre o erro.

    • Razão string

      Mensagens de erro de aplicativo retornadas com este erro.

  • 403 aplicação/json

    Forbidden.

    Ocultar atributos de resposta Mostrar atributos de resposta objeto
    • badRequestDetail objeto

      Detalhes da solicitação inválida.

      Ocultar atributo ruimRequestDetail Mostrar atributo ruimRequestDetail objeto
      • Campos array[objeto]

        Descreve todas as violações em uma solicitação do cliente .

        Ocultar atributos de campos Mostrar atributos dos campos objeto
        • Descrição string Obrigatório

          Uma descrição do motivo pelo qual o elemento de solicitação é incorreto.

        • Campo string Obrigatório

          Um caminho que leva a um campo no corpo da solicitação.

    • detalhe string

      Descreve as condições ou os motivos específicos que causam cada tipo de erro.

    • Erro integer(int32) Obrigatório

      O código de status HTTP retornado com este erro.

      Documentação externa
    • Código de erro string Obrigatório

      Código de erro do aplicativo retornado com esse erro.

    • Parâmetros array[objeto]

      Parâmetros usados para fornecer mais informações sobre o erro.

    • Razão string

      Mensagens de erro de aplicativo retornadas com este erro.

  • 404 aplicação/json

    Não encontrado.

    Ocultar atributos de resposta Mostrar atributos de resposta objeto
    • badRequestDetail objeto

      Detalhes da solicitação inválida.

      Ocultar atributo ruimRequestDetail Mostrar atributo ruimRequestDetail objeto
      • Campos array[objeto]

        Descreve todas as violações em uma solicitação do cliente .

        Ocultar atributos de campos Mostrar atributos dos campos objeto
        • Descrição string Obrigatório

          Uma descrição do motivo pelo qual o elemento de solicitação é incorreto.

        • Campo string Obrigatório

          Um caminho que leva a um campo no corpo da solicitação.

    • detalhe string

      Descreve as condições ou os motivos específicos que causam cada tipo de erro.

    • Erro integer(int32) Obrigatório

      O código de status HTTP retornado com este erro.

      Documentação externa
    • Código de erro string Obrigatório

      Código de erro do aplicativo retornado com esse erro.

    • Parâmetros array[objeto]

      Parâmetros usados para fornecer mais informações sobre o erro.

    • Razão string

      Mensagens de erro de aplicativo retornadas com este erro.

  • 500 aplicação/json

    Erro interno do servidor.

    Ocultar atributos de resposta Mostrar atributos de resposta objeto
    • badRequestDetail objeto

      Detalhes da solicitação inválida.

      Ocultar atributo ruimRequestDetail Mostrar atributo ruimRequestDetail objeto
      • Campos array[objeto]

        Descreve todas as violações em uma solicitação do cliente .

        Ocultar atributos de campos Mostrar atributos dos campos objeto
        • Descrição string Obrigatório

          Uma descrição do motivo pelo qual o elemento de solicitação é incorreto.

        • Campo string Obrigatório

          Um caminho que leva a um campo no corpo da solicitação.

    • detalhe string

      Descreve as condições ou os motivos específicos que causam cada tipo de erro.

    • Erro integer(int32) Obrigatório

      O código de status HTTP retornado com este erro.

      Documentação externa
    • Código de erro string Obrigatório

      Código de erro do aplicativo retornado com esse erro.

    • Parâmetros array[objeto]

      Parâmetros usados para fornecer mais informações sobre o erro.

    • Razão string

      Mensagens de erro de aplicativo retornadas com este erro.

GET /api/atlas/v2/groups/{groupId}/encryptionAtRest
atlas api encryptionAtRestUsingCustomerKeyManagement getGroupEncryptionAtRest --help
import (
	"os"
	"context"
	"log"
	sdk "go.mongodb.org/atlas-sdk/v20231115001/admin"
)

func main() {
	ctx := context.Background()
	clientID := os.Getenv("MONGODB_ATLAS_CLIENT_ID")
	clientSecret := os.Getenv("MONGODB_ATLAS_CLIENT_SECRET")

	// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
	client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))

	if err != nil {
		log.Fatalf("Error: %v", err)
	}

	params = &sdk.GetGroupEncryptionAtRestApiParams{}
	sdkResp, httpResp, err := client.EncryptionatRestusingCustomerKeyManagementApi.
		GetGroupEncryptionAtRestWithParams(ctx, params).
		Execute()
}
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
  --header "Accept: application/vnd.atlas.2023-11-15+json" \
  -X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/encryptionAtRest?pretty=true"
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
  --digest --include \
  --header "Accept: application/vnd.atlas.2023-11-15+json" \
  -X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/encryptionAtRest?pretty=true"
Exemplos de resposta (200)
{
  "awsKms": {
    "accessKeyID": "019dd98d94b4bb778e7552e4",
    "customerMasterKeyID": "string",
    "enabled": true,
    "region": "US_GOV_WEST_1",
    "requirePrivateNetworking": true,
    "valid": true
  },
  "azureKeyVault": {
    "azureEnvironment": "AZURE",
    "clientID": "string",
    "enabled": true,
    "keyIdentifier": "https://EXAMPLEKeyVault.vault.azure.net/keys/EXAMPLEKey/d891821e3d364e9eb88fbd3d11807b86",
    "keyVaultName": "string",
    "requirePrivateNetworking": true,
    "resourceGroupName": "string",
    "subscriptionID": "string",
    "tenantID": "string",
    "valid": true
  },
  "enabledForSearchNodes": true,
  "googleCloudKms": {
    "enabled": true,
    "keyVersionResourceID": "projects/my-project-common-0/locations/us-east4/keyRings/my-key-ring-0/cryptoKeys/my-key-0/cryptoKeyVersions/1",
    "roleId": "32b6e34b3d91647abb20e7b8",
    "valid": true
  }
}
Exemplos de resposta (401)
{
  "error": 401,
  "detail": "(This is just an example, the exception may not be related to this endpoint)",
  "reason": "Unauthorized",
  "errorCode": "NOT_ORG_GROUP_CREATOR"
}
Exemplos de resposta (403)
{
  "error": 403,
  "detail": "(This is just an example, the exception may not be related to this endpoint)",
  "reason": "Forbidden",
  "errorCode": "CANNOT_CHANGE_GROUP_NAME"
}
Exemplos de resposta (404)
{
  "error": 404,
  "detail": "(This is just an example, the exception may not be related to this endpoint) Cannot find resource AWS",
  "reason": "Not Found",
  "errorCode": "RESOURCE_NOT_FOUND"
}
Exemplos de resposta (500)
{
  "error": 500,
  "detail": "(This is just an example, the exception may not be related to this endpoint)",
  "reason": "Internal Server Error",
  "errorCode": "UNEXPECTED_ERROR"
}