Actualizar un rol personalizado en un proyecto

PARCHE /api/atlas/v2/groups/{groupId}/customDBRoles/roles/{roleName}

Actualiza un rol personalizado en el proyecto especificado. Para usar este recurso, la cuenta de servicio o la clave API solicitante debe tener el rol de propietario del proyecto, propietario del procesamiento de flujos del proyecto o administrador de acceso a la base de datos del proyecto.

Parámetros de ruta

  • ID de grupo string Requerido

    Cadena 24hexadecimal única que identifica su proyecto. Utilice el punto de conexión /groups para recuperar todos los proyectos a los que el usuario autenticado tiene acceso.

    NOTA: Grupos y proyectos son términos sinónimos. El ID de tu grupo es el mismo que el de tu proyecto. Para los grupos existentes, el ID de tu grupo/proyecto permanece igual. El recurso y los puntos finales correspondientes usan el término "grupos".

    El formato debe coincidir con el siguiente patrón: ^([a-f0-9]{24})$.

  • nombreDeRol string Requerido

    Etiqueta legible que identifica el rol de la solicitud. Este nombre debe ser único para este rol personalizado en este proyecto.

Parámetros de consulta

  • envolvente booleano

    Indicador que indica si la aplicación encapsula la respuesta en un objeto JSON envelope. Algunos clientes de la API no pueden acceder a los encabezados de respuesta HTTP ni al código de estado. Para solucionar esto, configure envelope=true en la consulta. Los endpoints que devuelven una lista de resultados utilizan el objeto de resultados como encapsulado. La aplicación añade el parámetro de estado al cuerpo de la respuesta.

    El valor predeterminado es false.

  • bonita booleano

    Bandera que indica si el cuerpo de la respuesta debe estar en formato prettyprint.

    El valor predeterminado es false.

    Impresión bonita
application/vnd.atlas.2023-01-01+json

Cuerpo Requerido

Actualiza un rol personalizado en el proyecto especificado.

  • acciones matriz[objeto]

    Lista de las acciones de privilegios individuales que otorga el rol.

    Acción de privilegio que otorga el rol.

    Ocultar atributos de acciones Mostrar atributos de acciones Objeto
    • acción string Requerido

      Etiqueta legible por humanos que identifica la acción privilegiada.

      Los valores son FIND, INSERT, REMOVE, UPDATE, BYPASS_DOCUMENT_VALIDATION, USE_UUID, KILL_OP, BYPASS_DEFAULT_MAX_TIME_MS, CREATE_COLLECTION, CREATE_INDEX, DROP_COLLECTION, ENABLE_PROFILER, KILL_ANY_CURSOR, CHANGE_STREAM, COLL_MOD, COMPACT, CONVERT_TO_CAPPED, DROP_DATABASE, DROP_INDEX, RE_INDEX, RENAME_COLLECTION_SAME_DB, SET_USER_WRITE_BLOCK, BYPASS_USER_WRITE_BLOCK, LIST_SESSIONS, KILL_ANY_SESSION, COLL_STATS, CONN_POOL_STATS, DB_HASH, DB_STATS, GET_CMD_LINE_OPTS, GET_LOG, GET_PARAMETER, GET_SHARD_MAP, HOST_INFO, IN_PROG, LIST_DATABASES, LIST_COLLECTIONS, LIST_INDEXES, LIST_SHARDS, NET_STAT, REPL_SET_GET_CONFIG, REPL_SET_GET_STATUS, SERVER_STATUS, VALIDATE, SHARDING_STATE, TOP, SQL_GET_SCHEMA, SQL_SET_SCHEMA, VIEW_ALL_HISTORY, OUT_TO_S3, OUT_TO_AZURE, OUT_TO_GCS, STORAGE_GET_CONFIG, STORAGE_SET_CONFIG, FLUSH_ROUTER_CONFIG, ENABLE_SHARDING, CHECK_METADATA_CONSISTENCY, MOVE_CHUNK, SPLIT_CHUNK, ANALYZE_SHARD_KEY, REFINE_COLLECTION_SHARD_KEY, CLEAR_JUMBO_FLAG, RESHARD_COLLECTION, SHARDED_DATA_DISTRIBUTION, GET_STREAM_PROCESSOR, CREATE_STREAM_PROCESSOR, PROCESS_STREAM_PROCESSOR, MODIFY_STREAM_PROCESSOR, START_STREAM_PROCESSOR, STOP_STREAM_PROCESSOR, DROP_STREAM_PROCESSOR, SAMPLE_STREAM_PROCESSOR, LIST_STREAM_PROCESSORS, LIST_CONNECTIONS o STREAM_PROCESSOR_STATS.

    • recursos matriz[objeto]

      Lista de recursos sobre los que concede la acción.

      Espacio de nombres al que este usuario de base de datos tiene acceso.

      Ocultar los atributos de los recursos Mostrar atributos de recursos Objeto
      Recursos del clúster
      • clúster booleano Requerido

        Marca que indica si se debe conceder la acción en el recurso del clúster. Si es true, MongoDB Cloud ignora los parámetros actions.resources.collection y actions.resources.db.

      • Colección string Requerido

        Etiqueta legible que identifica la colección en la que se otorga la acción a un usuario de MongoDB. Si no se configura este parámetro, se otorga la acción a todas las colecciones de la base de datos especificada en el parámetro actions.resources.db. Si se configura "actions.resources.cluster" : true, MongoDB Cloud ignora este parámetro.

      • db string Requerido

        Etiqueta legible que identifica la base de datos en la que se otorga la acción a un usuario de MongoDB. Si se establece "actions.resources.cluster" : true, MongoDB Cloud ignora este parámetro.

  • roles heredados matriz[objeto]

    Lista de los roles integrados que hereda este rol personalizado.

    Rol heredado de otro contexto para este usuario de base de datos.

    Ocultar atributos de roles heredados Mostrar atributos de roles heredados Objeto
    Roles de MongoDB integrados
    • db string Requerido

      Etiqueta legible por humanos que identifica la base de datos en la que alguien otorga la acción a un usuario de MongoDB.

    • rol string Requerido

      Etiqueta legible que identifica el rol heredado. Establezca este valor en admin para todos los roles excepto read o readWrite.

      Roles integrados de MongoDB

Respuestas

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

    Vale

    Ocultar atributos de respuesta Mostrar los atributos de respuesta Objeto
    • acciones matriz[objeto]

      Lista de las acciones de privilegios individuales que otorga el rol.

      Acción de privilegio que otorga el rol.

      Ocultar atributos de acciones Mostrar atributos de acciones Objeto
      • acción string Requerido

        Etiqueta legible por humanos que identifica la acción privilegiada.

        Los valores son FIND, INSERT, REMOVE, UPDATE, BYPASS_DOCUMENT_VALIDATION, USE_UUID, KILL_OP, BYPASS_DEFAULT_MAX_TIME_MS, CREATE_COLLECTION, CREATE_INDEX, DROP_COLLECTION, ENABLE_PROFILER, KILL_ANY_CURSOR, CHANGE_STREAM, COLL_MOD, COMPACT, CONVERT_TO_CAPPED, DROP_DATABASE, DROP_INDEX, RE_INDEX, RENAME_COLLECTION_SAME_DB, SET_USER_WRITE_BLOCK, BYPASS_USER_WRITE_BLOCK, LIST_SESSIONS, KILL_ANY_SESSION, COLL_STATS, CONN_POOL_STATS, DB_HASH, DB_STATS, GET_CMD_LINE_OPTS, GET_LOG, GET_PARAMETER, GET_SHARD_MAP, HOST_INFO, IN_PROG, LIST_DATABASES, LIST_COLLECTIONS, LIST_INDEXES, LIST_SHARDS, NET_STAT, REPL_SET_GET_CONFIG, REPL_SET_GET_STATUS, SERVER_STATUS, VALIDATE, SHARDING_STATE, TOP, SQL_GET_SCHEMA, SQL_SET_SCHEMA, VIEW_ALL_HISTORY, OUT_TO_S3, OUT_TO_AZURE, OUT_TO_GCS, STORAGE_GET_CONFIG, STORAGE_SET_CONFIG, FLUSH_ROUTER_CONFIG, ENABLE_SHARDING, CHECK_METADATA_CONSISTENCY, MOVE_CHUNK, SPLIT_CHUNK, ANALYZE_SHARD_KEY, REFINE_COLLECTION_SHARD_KEY, CLEAR_JUMBO_FLAG, RESHARD_COLLECTION, SHARDED_DATA_DISTRIBUTION, GET_STREAM_PROCESSOR, CREATE_STREAM_PROCESSOR, PROCESS_STREAM_PROCESSOR, MODIFY_STREAM_PROCESSOR, START_STREAM_PROCESSOR, STOP_STREAM_PROCESSOR, DROP_STREAM_PROCESSOR, SAMPLE_STREAM_PROCESSOR, LIST_STREAM_PROCESSORS, LIST_CONNECTIONS o STREAM_PROCESSOR_STATS.

      • recursos matriz[objeto]

        Lista de recursos sobre los que concede la acción.

        Espacio de nombres al que este usuario de base de datos tiene acceso.

        Ocultar los atributos de los recursos Mostrar atributos de recursos Objeto
        Recursos del clúster
        • clúster booleano Requerido

          Marca que indica si se debe conceder la acción en el recurso del clúster. Si es true, MongoDB Cloud ignora los parámetros actions.resources.collection y actions.resources.db.

        • Colección string Requerido

          Etiqueta legible que identifica la colección en la que se otorga la acción a un usuario de MongoDB. Si no se configura este parámetro, se otorga la acción a todas las colecciones de la base de datos especificada en el parámetro actions.resources.db. Si se configura "actions.resources.cluster" : true, MongoDB Cloud ignora este parámetro.

        • db string Requerido

          Etiqueta legible que identifica la base de datos en la que se otorga la acción a un usuario de MongoDB. Si se establece "actions.resources.cluster" : true, MongoDB Cloud ignora este parámetro.

    • roles heredados matriz[objeto]

      Lista de los roles integrados que hereda este rol personalizado.

      Rol heredado de otro contexto para este usuario de base de datos.

      Ocultar atributos de roles heredados Mostrar atributos de roles heredados Objeto
      Roles de MongoDB integrados
      • db string Requerido

        Etiqueta legible por humanos que identifica la base de datos en la que alguien otorga la acción a un usuario de MongoDB.

      • rol string Requerido

        Etiqueta legible que identifica el rol heredado. Establezca este valor en admin para todos los roles excepto read o readWrite.

        Roles integrados de MongoDB
    • nombreDeRol string Requerido

      Etiqueta legible que identifica el rol de la solicitud. Este nombre debe ser único para este rol personalizado en este proyecto.

  • 400 aplicación/json

    Solicitud incorrecta.

    Ocultar atributos de respuesta Mostrar los atributos de respuesta Objeto
    • badRequestDetail Objeto

      Detalle de solicitud incorrecto.

      Ocultar el atributo badRequestDetail Mostrar el atributo badRequestDetail Objeto
      • campos matriz[objeto]

        Describe todas las violaciones en una solicitud de cliente.

        Ocultar atributos de campos Mostrar atributos de campos Objeto
        • Descripción string Requerido

          Una descripción de por qué el elemento de solicitud es incorrecto.

        • Campo string Requerido

          Una ruta que conduce a un campo en el cuerpo de la solicitud.

    • detalle string

      Describe las condiciones o razones específicas que causan cada tipo de error.

    • Error integer(int32) Requerido

      Código de estado HTTP devuelto con este error.

      Documentación externa
    • errorCode string Requerido

      Código de error de aplicación devuelto con este error.

    • Parámetros matriz[objeto]

      Parámetros utilizados para dar más información sobre el error.

    • razón string

      Se devolvió un mensaje de error de aplicación con este error.

  • 401 aplicación/json

    No autorizado.

    Ocultar atributos de respuesta Mostrar los atributos de respuesta Objeto
    • badRequestDetail Objeto

      Detalle de solicitud incorrecto.

      Ocultar el atributo badRequestDetail Mostrar el atributo badRequestDetail Objeto
      • campos matriz[objeto]

        Describe todas las violaciones en una solicitud de cliente.

        Ocultar atributos de campos Mostrar atributos de campos Objeto
        • Descripción string Requerido

          Una descripción de por qué el elemento de solicitud es incorrecto.

        • Campo string Requerido

          Una ruta que conduce a un campo en el cuerpo de la solicitud.

    • detalle string

      Describe las condiciones o razones específicas que causan cada tipo de error.

    • Error integer(int32) Requerido

      Código de estado HTTP devuelto con este error.

      Documentación externa
    • errorCode string Requerido

      Código de error de aplicación devuelto con este error.

    • Parámetros matriz[objeto]

      Parámetros utilizados para dar más información sobre el error.

    • razón string

      Se devolvió un mensaje de error de aplicación con este error.

  • 403 aplicación/json

    Forbidden.

    Ocultar atributos de respuesta Mostrar los atributos de respuesta Objeto
    • badRequestDetail Objeto

      Detalle de solicitud incorrecto.

      Ocultar el atributo badRequestDetail Mostrar el atributo badRequestDetail Objeto
      • campos matriz[objeto]

        Describe todas las violaciones en una solicitud de cliente.

        Ocultar atributos de campos Mostrar atributos de campos Objeto
        • Descripción string Requerido

          Una descripción de por qué el elemento de solicitud es incorrecto.

        • Campo string Requerido

          Una ruta que conduce a un campo en el cuerpo de la solicitud.

    • detalle string

      Describe las condiciones o razones específicas que causan cada tipo de error.

    • Error integer(int32) Requerido

      Código de estado HTTP devuelto con este error.

      Documentación externa
    • errorCode string Requerido

      Código de error de aplicación devuelto con este error.

    • Parámetros matriz[objeto]

      Parámetros utilizados para dar más información sobre el error.

    • razón string

      Se devolvió un mensaje de error de aplicación con este error.

  • 404 aplicación/json

    No se encontró.

    Ocultar atributos de respuesta Mostrar los atributos de respuesta Objeto
    • badRequestDetail Objeto

      Detalle de solicitud incorrecto.

      Ocultar el atributo badRequestDetail Mostrar el atributo badRequestDetail Objeto
      • campos matriz[objeto]

        Describe todas las violaciones en una solicitud de cliente.

        Ocultar atributos de campos Mostrar atributos de campos Objeto
        • Descripción string Requerido

          Una descripción de por qué el elemento de solicitud es incorrecto.

        • Campo string Requerido

          Una ruta que conduce a un campo en el cuerpo de la solicitud.

    • detalle string

      Describe las condiciones o razones específicas que causan cada tipo de error.

    • Error integer(int32) Requerido

      Código de estado HTTP devuelto con este error.

      Documentación externa
    • errorCode string Requerido

      Código de error de aplicación devuelto con este error.

    • Parámetros matriz[objeto]

      Parámetros utilizados para dar más información sobre el error.

    • razón string

      Se devolvió un mensaje de error de aplicación con este error.

  • 409 aplicación/json

    Conflicto.

    Ocultar atributos de respuesta Mostrar los atributos de respuesta Objeto
    • badRequestDetail Objeto

      Detalle de solicitud incorrecto.

      Ocultar el atributo badRequestDetail Mostrar el atributo badRequestDetail Objeto
      • campos matriz[objeto]

        Describe todas las violaciones en una solicitud de cliente.

        Ocultar atributos de campos Mostrar atributos de campos Objeto
        • Descripción string Requerido

          Una descripción de por qué el elemento de solicitud es incorrecto.

        • Campo string Requerido

          Una ruta que conduce a un campo en el cuerpo de la solicitud.

    • detalle string

      Describe las condiciones o razones específicas que causan cada tipo de error.

    • Error integer(int32) Requerido

      Código de estado HTTP devuelto con este error.

      Documentación externa
    • errorCode string Requerido

      Código de error de aplicación devuelto con este error.

    • Parámetros matriz[objeto]

      Parámetros utilizados para dar más información sobre el error.

    • razón string

      Se devolvió un mensaje de error de aplicación con este error.

  • 500 aplicación/json

    Error Interno del Servidor.

    Ocultar atributos de respuesta Mostrar los atributos de respuesta Objeto
    • badRequestDetail Objeto

      Detalle de solicitud incorrecto.

      Ocultar el atributo badRequestDetail Mostrar el atributo badRequestDetail Objeto
      • campos matriz[objeto]

        Describe todas las violaciones en una solicitud de cliente.

        Ocultar atributos de campos Mostrar atributos de campos Objeto
        • Descripción string Requerido

          Una descripción de por qué el elemento de solicitud es incorrecto.

        • Campo string Requerido

          Una ruta que conduce a un campo en el cuerpo de la solicitud.

    • detalle string

      Describe las condiciones o razones específicas que causan cada tipo de error.

    • Error integer(int32) Requerido

      Código de estado HTTP devuelto con este error.

      Documentación externa
    • errorCode string Requerido

      Código de error de aplicación devuelto con este error.

    • Parámetros matriz[objeto]

      Parámetros utilizados para dar más información sobre el error.

    • razón string

      Se devolvió un mensaje de error de aplicación con este error.

PARCHE /api/atlas/v2/groups/{groupId}/customDBRoles/roles/{roleName}
atlas api customDatabaseRoles updateCustomDbRole --help
import (
	"os"
	"context"
	"log"
	sdk "go.mongodb.org/atlas-sdk/v20241023001/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.UpdateGroupCustomDbRoleRoleApiParams{}
	sdkResp, httpResp, err := client.CustomDatabaseRolesApi.
		UpdateGroupCustomDbRoleRoleWithParams(ctx, params).
		Execute()
}
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
  --header "Accept: application/vnd.atlas.2024-10-23+json" \
  --header "Content-Type: application/json" \
  -X PATCH "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/customDBRoles/roles/{roleName}" \
  -d '{ <Payload> }'
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
  --digest --include \
  --header "Accept: application/vnd.atlas.2024-10-23+json" \
  --header "Content-Type: application/json" \
  -X PATCH "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/customDBRoles/roles/{roleName}" \
  -d '{ <Payload> }'
Solicitar ejemplos
{
  "actions": [
    {
      "action": "FIND",
      "resources": [
        {
          "cluster": true,
          "collection": "string",
          "db": "string"
        }
      ]
    }
  ],
  "inheritedRoles": [
    {
      "db": "string",
      "role": "string"
    }
  ]
}
Ejemplos de respuestas (200)
{
  "actions": [
    {
      "action": "FIND",
      "resources": [
        {
          "cluster": true,
          "collection": "string",
          "db": "string"
        }
      ]
    }
  ],
  "inheritedRoles": [
    {
      "db": "string",
      "role": "string"
    }
  ],
  "roleName": "string"
}
Ejemplos de respuestas (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"
}
Ejemplos de respuestas (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"
}
Ejemplos de respuestas (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"
}
Ejemplos de respuestas (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"
}
Ejemplos de respuestas (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"
}
Ejemplos de respuestas (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"
}