Atualizar configuração de encryption at rest para um projeto

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

Atualiza a configuração da criptografia em descanso usando as chaves que você gerencia por meio do seu 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. Esse recurso não está disponível para clusters gratuitos M0, M2, M5 ou clusters sem servidor.

Depois que você configurar pelo menos uma Criptografia em Repouso usando um provedor de Gerenciamento de Chaves do Cliente para o projeto do MongoDB Cloud, os Proprietários do Projeto poderão ativar a Criptografia em Repouso usando o Gerenciamento de Chaves do Cliente para cada cluster do MongoDB Cloud para o qual eles exigem criptografia. O provedor de criptografia em repouso usando o gerenciamento de chaves do cliente não precisa corresponder ao provedor de serviços de nuvem do cluster. O MongoDB Cloud não gira automaticamente as chaves de criptografia gerenciadas pelo usuário. Adote a criptografia em repouso de sua preferência usando a documentação e a orientação do provedor de gerenciamento de chaves do cliente para obter as práticas recomendadas de rotação de chaves. O MongoDB Cloud cria automaticamente um alerta de rotação de chaves de 90 dias quando você configura a criptografia em repouso usando o gerenciamento de chaves do cliente usando seu gerenciamento de chaves em um projeto do MongoDB Cloud. O MongoDB Cloud criptografa todo o armazenamento, independentemente de você usar ou não seu próprio gerenciamento de chaves.

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
application/vnd.atlas.2023-01-01+json

corpo, corpo Obrigatório

Os parâmetros exigidos dependem se alguém habilitou a Encryption at Rest usando o gerenciamento de chaves de cliente:

Se você tiver habilitado a criptografia em repouso usando o Customer Key Management (CMK), o Atlas exigirá todos os parâmetros do fornecedor de criptografia desejado.

  • Para usar o AWS Key Management Service (KMS), o MongoDB Cloud exige todos os campos no objeto awsKms.
  • Para usar o Azure Key Vault, o MongoDB Cloud exige todos os campos no objeto azureKeyVault.
  • Para usar o Google Cloud Platform KMS (KMS), o MongoDB Cloud exige todos os campos no objeto googleCloudKms Para autenticação, você deve fornecer serviceAccountKey (credenciais estáticas) ou roleId (autenticação baseada em conta de serviço) Depois que o roleId for configurado, serviceAccountKey não será mais suportado.

Se você habilitou a criptografia em repouso usando o Gerenciamento de Chaves do Cliente, os administradores poderão passar apenas os campos alterados para o objeto awsKms, azureKeyVault ou googleCloudKms para atualizar a configuração para esse endpoint.

  • 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.

    • roleId string

      String exclusiva de 24dígitos hexadecimais que identifica uma função do Amazon Web Services (AWS) Identity e Access Management (IAM). Essa role do IAM tem as permissões necessárias para gerenciar sua chave mestra do cliente da AWS.

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

    • secretAccessKey string

      Etiqueta legível por humanos da chave de acesso secreta de gerenciamento de identidade e acesso (IAM) com as permissões necessárias para acessar sua chave mestra do cliente Amazon Web Services (AWS).

  • 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.

    • segredo string

      Dados privados que você precisa proteger e que pertencem ao locatário do Azure Key Vault (AKV) especificado (azureKeyVault.tenantID). Esses dados podem incluir qualquer tipo de dados confidenciais, como senhas, connection strings de banco de dados , chaves de API e afins. O AKV armazena essas informações como dados binários criptografados.

      Segredos do 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.

  • 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})$.

    • serviceAccountKey string

      objeto JavaScript Object Notation (JSON) que contém o Google Cloud Key Management Service (KMS). Formate o JSON como uma string e não como um objeto.

      Autenticação do Google Cloud

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.

  • 400 aplicação/json

    Solicitação inválida.

    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.

  • 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.

  • 409 aplicação/json

    Conflito.

    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.

PATCH /API/atlas/v2/groups/{groupId}/encryptionAtRest
atlas api encryptionAtRestUsingCustomerKeyManagement updateGroupEncryptionAtRest --help
import (
	"os"
	"context"
	"log"
	sdk "go.mongodb.org/atlas-sdk/v20240530001/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.UpdateGroupEncryptionAtRestApiParams{}
	sdkResp, httpResp, err := client.EncryptionatRestusingCustomerKeyManagementApi.
		UpdateGroupEncryptionAtRestWithParams(ctx, params).
		Execute()
}
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
  --header "Accept: application/vnd.atlas.2024-05-30+json" \
  --header "Content-Type: application/json" \
  -X PATCH "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/encryptionAtRest" \
  -d '{ <Payload> }'
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
  --digest --include \
  --header "Accept: application/vnd.atlas.2024-05-30+json" \
  --header "Content-Type: application/json" \
  -X PATCH "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/encryptionAtRest" \
  -d '{ <Payload> }'
Exemplos de solicitação
{
  "awsKms": {
    "accessKeyID": "019dd98d94b4bb778e7552e4",
    "customerMasterKeyID": "string",
    "enabled": true,
    "region": "US_GOV_WEST_1",
    "requirePrivateNetworking": true,
    "roleId": "32b6e34b3d91647abb20e7b8",
    "secretAccessKey": "string"
  },
  "azureKeyVault": {
    "azureEnvironment": "AZURE",
    "clientID": "string",
    "enabled": true,
    "keyIdentifier": "https://EXAMPLEKeyVault.vault.azure.net/keys/EXAMPLEKey/d891821e3d364e9eb88fbd3d11807b86",
    "keyVaultName": "string",
    "requirePrivateNetworking": true,
    "resourceGroupName": "string",
    "secret": "string",
    "subscriptionID": "string",
    "tenantID": "string"
  },
  "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",
    "serviceAccountKey": "string"
  }
}
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 (400)
{
  "error": 400,
  "detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
  "reason": "Bad Request",
  "errorCode": "VALIDATION_ERROR"
}
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 (409)
{
  "error": 409,
  "detail": "(This is just an example, the exception may not be related to this endpoint) Cannot delete organization link while there is active migration in following project ids: 60c4fd418ebe251047c50554",
  "reason": "Conflict",
  "errorCode": "CANNOT_DELETE_ORG_ACTIVE_LIVE_MIGRATION_ATLAS_ORG_LINK"
}
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"
}