Adicionar entradas à lista de acesso IP do projeto

POSTAR /api/atlas/v2/groups/{groupId}/accessList

Adiciona uma ou mais entradas de lista de acesso ao projeto especificado. O MongoDB Cloud só permite conexões de cliente com o cluster a partir de entradas na lista de acesso IP do projeto. Grave cada entrada como um endereço IP ou um bloco de endereços IP anotado em CIDR. Para usar esse recurso, a conta de serviço ou a chave de API solicitante deve ter as funções Proprietário do projeto ou Administrador de gráficos do projeto. Este recurso substitui o recurso da lista de permissões. O MongoDB Cloud removeu as listas de permissões em julho de 2021. Atualize seus aplicativos para usar este novo recurso. O ponto de extremidade /groups/{GROUP-ID}/accessList gerencia a lista de acesso IP do banco de dados. Este ponto de extremidade é diferente do ponto de extremidade orgs/{ORG-ID}/apiKeys/{API-KEY-ID}/accesslist, que gerencia a lista de acesso para organizações do MongoDB Cloud. Este ponto de extremidade não suporta solicitações POST simultâneas. Você deve enviar diversas solicitações POST de forma síncrona.

Lista de acesso IP

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.

  • incluir contagem booleano

    Sinalizador que indica se a resposta retorna o número total de itens (totalCount) na resposta.

    O valor padrão é true.

  • itemsPerPage inteiro

    Número de itens que a resposta retorna por página.

    O valor mínimo é 1, o valor máximo é 500. O valor padrão é 100.

  • pageNum inteiro

    Número da página que exibe o conjunto atual dos objetos totais que a resposta retorna.

    O valor mínimo é 1. O valor padrão é 1.

  • 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

Uma ou mais entradas da lista de acesso para adicionar ao projeto especificado.

  • awsSecurityGroup string

    String exclusiva de caracteres do grupo de segurança da Amazon Web Services (AWS) que você deseja adicionar à lista de acesso IP do projeto. Sua entrada na lista de acesso IP pode ser um awsSecurityGroup, um cidrBlock ou um ipAddress. Você deve configurar o emparelhamento Virtual Private Connection (VPC) para seu projeto antes de adicionar um grupo de segurança da AWS a uma lista de acesso IP. Não é possível definir grupos de segurança AWS como entradas de lista de acesso temporário. Não defina este parâmetro se você definir cidrBlock ou ipAddress.

    O formato deve corresponder ao seguinte padrão: ^([0-9]*/)?sg-([0-9]*).

  • cidrBlock string

    Faixa de endereços IP na notação CIDR (Classless Inter-Domain Routing) que você deseja adicionar à lista de acesso IP do projeto. Sua entrada na lista de acesso IP pode ser um awsSecurityGroup, um cidrBlock ou um ipAddress. Não defina este parâmetro se você definir awsSecurityGroup ou ipAddress.

    O formato deve corresponder ao seguinte padrão: ^([0-9]{1,3}\.){3}[0-9]{1,3}(%2[fF][0-9]{1,3})?|([0-9a-f]{1,4}\:){7}[0-9a-f]{1,4}(%2[fF][0-9]{1,3})?|([0-9a-f]{1,4}\:){1,6}\:(%2[fF][0-9]{1,3})?$.

  • comment string

    Lembrete que explica a finalidade ou o escopo desta entrada da lista de acesso IP.

    O comprimento máximo é 80.

  • deleteAfterDate string(data-hora)

    Data e hora após as quais o MongoDB Cloud exclui a entrada temporária da lista de acesso. Esse parâmetro expressa seu valor no formato de carimbo de data/hora ISO 8601 em UTC e pode incluir a designação de fuso horário. A data deve ser posterior à data atual, mas não além de uma semana após o envio desta solicitação. O recurso retornará esse parâmetro se você tiver especificado uma data de expiração ao criar essa entrada de lista de acesso IP.

  • ipAddress string

    Endereço IP que você deseja adicionar à lista de acesso IP do projeto. Sua entrada na lista de acesso IP pode ser um awsSecurityGroup, um cidrBlock ou um ipAddress. Não defina esse parâmetro se você definir awsSecurityGroup ou cidrBlock.

    O formato deve corresponder ao seguinte padrão: ^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)(\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$.

Respostas

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

    OK

    Ocultar atributos de resposta Mostrar atributos de resposta objeto
    • Resultados array[objeto]

      Lista de documentos retornados que o MongoDB Cloud fornece ao concluir esta solicitação.

      Ocultar atributos de resultados Mostrar atributos de resultados objeto
      • awsSecurityGroup string

        String exclusiva de caracteres do grupo de segurança da Amazon Web Services (AWS) que você deseja adicionar à lista de acesso IP do projeto. Sua entrada na lista de acesso IP pode ser um awsSecurityGroup, um cidrBlock ou um ipAddress. Você deve configurar o emparelhamento Virtual Private Connection (VPC) para seu projeto antes de adicionar um grupo de segurança da AWS a uma lista de acesso IP. Não é possível definir grupos de segurança AWS como entradas de lista de acesso temporário. Não defina este parâmetro se você definir cidrBlock ou ipAddress.

        O formato deve corresponder ao seguinte padrão: ^([0-9]*/)?sg-([0-9]*).

      • cidrBlock string

        Faixa de endereços IP na notação CIDR (Classless Inter-Domain Routing) que você deseja adicionar à lista de acesso IP do projeto. Sua entrada na lista de acesso IP pode ser um awsSecurityGroup, um cidrBlock ou um ipAddress. Não defina este parâmetro se você definir awsSecurityGroup ou ipAddress.

        O formato deve corresponder ao seguinte padrão: ^([0-9]{1,3}\.){3}[0-9]{1,3}(%2[fF][0-9]{1,3})?|([0-9a-f]{1,4}\:){7}[0-9a-f]{1,4}(%2[fF][0-9]{1,3})?|([0-9a-f]{1,4}\:){1,6}\:(%2[fF][0-9]{1,3})?$.

      • comment string

        Lembrete que explica a finalidade ou o escopo desta entrada da lista de acesso IP.

        O comprimento máximo é 80.

      • deleteAfterDate string(data-hora)

        Data e hora após as quais o MongoDB Cloud exclui a entrada temporária da lista de acesso. Esse parâmetro expressa seu valor no formato de carimbo de data/hora ISO 8601 em UTC e pode incluir a designação de fuso horário. A data deve ser posterior à data atual, mas não além de uma semana após o envio desta solicitação. O recurso retornará esse parâmetro se você tiver especificado uma data de expiração ao criar essa entrada de lista de acesso IP.

      • groupId string

        String exclusiva de 24dígitos hexadecimais que identifica o projeto que contém a lista de acesso IP à qual você deseja adicionar uma ou mais entradas.

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

      • ipAddress string

        Endereço IP que você deseja adicionar à lista de acesso IP do projeto. Sua entrada na lista de acesso IP pode ser um awsSecurityGroup, um cidrBlock ou um ipAddress. Não defina esse parâmetro se você definir awsSecurityGroup ou cidrBlock.

        O formato deve corresponder ao seguinte padrão: ^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)(\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$.

    • contagem total integer(int32)

      Número total de documentos disponíveis. O MongoDB Cloud omite este valor se includeCount estiver definido como false. O número total é uma estimativa e pode não ser exato.

      O valor mínimo é 0.

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

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

POST /api/atlas/v2/groups/{groupId}/accessList
atlas api projectIpAccessList createGroupAccessListEntry --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.CreateGroupAccessListEntryApiParams{}
	sdkResp, httpResp, err := client.ProjectIPAccessListApi.
		CreateGroupAccessListEntryWithParams(ctx, params).
		Execute()
}
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
  --header "Accept: application/vnd.atlas.2023-11-15+json" \
  --header "Content-Type: application/json" \
  -X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/accessList" \
  -d '{ <Payload> }'
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
  --digest --include \
  --header "Accept: application/vnd.atlas.2023-11-15+json" \
  --header "Content-Type: application/json" \
  -X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/accessList" \
  -d '{ <Payload> }'
Exemplos de solicitação
[
  {
    "awsSecurityGroup": "string",
    "cidrBlock": "string",
    "comment": "string",
    "deleteAfterDate": "2025-05-04T09:42:00Z",
    "ipAddress": "string"
  }
]
Exemplos de resposta (200)
{
  "links": [
    {
      "href": "https://cloud.mongodb.com/api/atlas",
      "rel": "self"
    }
  ],
  "results": [
    {
      "awsSecurityGroup": "string",
      "cidrBlock": "string",
      "comment": "string",
      "deleteAfterDate": "2025-05-04T09:42:00Z",
      "groupId": "32b6e34b3d91647abb20e7b8",
      "ipAddress": "string",
      "links": [
        {
          "href": "https://cloud.mongodb.com/api/atlas",
          "rel": "self"
        }
      ]
    }
  ],
  "totalCount": 42
}
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 (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"
}