Skip to main content
Se proporciona el idioma español mediante traducción automática para su comodidad. En caso de alguna inconsistencia, el inglés precede al español.

Agregue entradas LDAP a Astra

Colaboradores

Después de configurar LDAP como proveedor de autenticación para Astra Control Center, puede seleccionar los usuarios LDAP que Astra autenticará mediante las credenciales LDAP. Cada usuario debe tener una función en Astra para poder acceder a Astra a través de la API ASTRA Control REST.

Hay dos formas de configurar Astra para asignar funciones. Elija el que mejor se adapte a su entorno.

Nota Las credenciales LDAP tienen el formato de nombre de usuario como dirección de correo electrónico y contraseña LDAP asociada.

Agregar y enlazar un usuario individual

Puede asignar una función a cada usuario Astra que se utilice después de la autenticación LDAP. Esto resulta apropiado cuando hay un número reducido de usuarios y cada uno puede tener características administrativas diferentes.

Paso 1: Agregar un usuario

Realice la siguiente llamada a la API DE REST para añadir un usuario a Astra e indicar que LDAP es el proveedor de autenticación.

Método HTTP y punto final

Esta llamada a la API de REST utiliza el siguiente método y extremo.

Método HTTP Ruta

PUBLICAR

/accounts/{account_id}/core/v1/users

Ejemplo de curl
curl --request POST \
--location "https://astra.example.com/accounts/$ACCOUNT_ID/core/v1/users" \
--include \
--header "Content-Type: application/astra-user+json" \
--header "Accept: */*" \
--header "Authorization: Bearer $API_TOKEN" \
--data  @JSONinput
Ejemplo de entrada JSON
{
  "type" :  "application/astra-user",
  "version" : "1.1",
  "authID" : "cn=JohnDoe,ou=users,ou=astra,dc=example,dc=com",
  "authProvider" : "ldap",
  "firstName" : "John",
  "lastName" : "Doe",
  "email" : "john.doe@example.com"
}

Tenga en cuenta lo siguiente acerca de los parámetros de entrada:

  • Se requieren los siguientes parámetros:

    • authProvider

    • authID

    • email

  • authID Es el nombre distintivo (DN) del usuario en LDAP

  • email Debe ser único para todos los usuarios definidos en Astra

Si la email El valor no es único, se produce un error y se devuelve un código de estado HTTP 409 en la respuesta.

Ejemplo de resultado JSON
{
  "metadata": {
    "creationTimestamp": "2022-07-21T17:44:18Z",
    "modificationTimestamp": "2022-07-21T17:44:18Z",
    "createdBy": "8a02d2b8-a69d-4064-827f-36851b3e1e6e",
    "labels": []
  },
  "type": "application/astra-user",
  "version": "1.2",
  "id": "a7b5e674-a1b1-48f6-9729-6a571426d49f",
  "authProvider": "ldap",
  "authID": "cn=JohnDoe,ou=users,ou=astra,dc=example,dc=com",
  "firstName": "John",
  "lastName": "Doe",
  "companyName": "",
  "email": "john.doe@example.com",
  "postalAddress": {
    "addressCountry": "",
    "addressLocality": "",
    "addressRegion": "",
    "streetAddress1": "",
    "streetAddress2": "",
    "postalCode": ""
  },
  "state": "active",
  "sendWelcomeEmail": "false",
  "isEnabled": "true",
  "isInviteAccepted": "true",
  "enableTimestamp": "2022-07-21T17:44:18Z",
  "lastActTimestamp": ""
}

Paso 2: Agregue un enlace de rol para el usuario

Ejecute la siguiente llamada API de REST para enlazar el usuario con un rol específico. Debe tener creado el UUID del usuario en el paso anterior.

Método HTTP y punto final

Esta llamada a la API de REST utiliza el siguiente método y extremo.

Método HTTP Ruta

PUBLICAR

/Accounts/{account_id}/core/v1/roleBindings

Ejemplo de curl
curl --request POST \
--location "https://astra.example.com/accounts/$ACCOUNT_ID/core/v1/roleBindings" \
--include \
--header "Content-Type: application/astra-roleBinding+json" \
--header "Accept: */*" \
--header "Authorization: Bearer $API_TOKEN" \
--data  @JSONinput
Ejemplo de entrada JSON
{
  "type": "application/astra-roleBinding",
  "version": "1.1",
  "accountID": "{account_id}",
  "userID": "a7b5e674-a1b1-48f6-9729-6a571426d49f",
  "role": "member",
  "roleConstraints": ["*"]
}

Tenga en cuenta lo siguiente acerca de los parámetros de entrada:

  • El valor utilizado anteriormente para roleConstraint Es la única opción disponible para la versión actual de Astra. Indica que el usuario no está restringido a un conjunto limitado de espacios de nombres y puede acceder a todos ellos.

Ejemplo de respuesta JSON
{
  "metadata": {
    "creationTimestamp": "2022-07-21T18:08:24Z",
    "modificationTimestamp": "2022-07-21T18:08:24Z",
    "createdBy": "8a02d2b8-a69d-4064-827f-36851b3e1e6e",
    "labels": []
  },
  "type": "application/astra-roleBinding",
  "principalType": "user",
  "version": "1.1",
  "id": "b02c7e4d-d483-40d1-aaff-e1f900312114",
  "userID": "a7b5e674-a1b1-48f6-9729-6a571426d49f",
  "groupID": "00000000-0000-0000-0000-000000000000",
  "accountID": "d0fdbfa7-be32-4a71-b59d-13d95b42329a",
  "role": "member",
  "roleConstraints": ["*"]
}

Tenga en cuenta lo siguiente sobre los parámetros de respuesta:

  • El valor user para la principalType el campo indica que se ha agregado el enlace de función a un usuario (no a un grupo).

Agregar y enlazar un grupo

Puede asignar una función a un grupo Astra que se utilice después de la autenticación LDAP. Resulta apropiado cuando hay un gran número de usuarios y cada uno puede tener características administrativas similares.

Paso 1: Agregar un grupo

Realice la siguiente llamada a la API DE REST para agregar un grupo a Astra e indicar que LDAP es el proveedor de autenticación.

Método HTTP y punto final

Esta llamada a la API de REST utiliza el siguiente método y extremo.

Método HTTP Ruta

PUBLICAR

/accounts/{account_id}/core/v1/groups

Ejemplo de curl
curl --request POST \
--location "https://astra.example.com/accounts/$ACCOUNT_ID/core/v1/groups" \
--include \
--header "Content-Type: application/astra-group+json" \
--header "Accept: */*" \
--header "Authorization: Bearer $API_TOKEN" \
--data  @JSONinput
Ejemplo de entrada JSON
{
  "type": "application/astra-group",
  "version": "1.0",
  "name": "Engineering",
  "authProvider": "ldap",
  "authID": "CN=Engineering,OU=groups,OU=astra,DC=example,DC=com"
}

Tenga en cuenta lo siguiente acerca de los parámetros de entrada:

  • Se requieren los siguientes parámetros:

    • authProvider

    • authID

Ejemplo de respuesta JSON
{
  "type": "application/astra-group",
  "version": "1.0",
  "id": "8b5b54da-ae53-497a-963d-1fc89990525b",
  "name": "Engineering",
  "authProvider": "ldap",
  "authID": "CN=Engineering,OU=groups,OU=astra,DC=example,DC=com",
  "metadata": {
    "creationTimestamp": "2022-07-21T18:42:52Z",
    "modificationTimestamp": "2022-07-21T18:42:52Z",
    "createdBy": "8a02d2b8-a69d-4064-827f-36851b3e1e6e",
    "labels": []
  }
}

Paso 2: Agregue un enlace de rol para el grupo

Realice la siguiente llamada de API de REST para enlazar el grupo con un rol específico. Debe haber creado el UUID del grupo en el paso anterior. Los usuarios que sean miembros del grupo podrán iniciar sesión en Astra después de que LDAP realice la autenticación.

Método HTTP y punto final

Esta llamada a la API de REST utiliza el siguiente método y extremo.

Método HTTP Ruta

PUBLICAR

/Accounts/{account_id}/core/v1/roleBindings

Ejemplo de curl
curl --request POST \
--location "https://astra.example.com/accounts/$ACCOUNT_ID/core/v1/roleBindings" \
--include \
--header "Content-Type: application/astra-roleBinding+json" \
--header "Accept: */*" \
--header "Authorization: Bearer $API_TOKEN" \
--data  @JSONinput
Ejemplo de entrada JSON
{
  "type": "application/astra-roleBinding",
  "version": "1.1",
  "accountID": "{account_id}",
  "groupID": "8b5b54da-ae53-497a-963d-1fc89990525b",
  "role": "viewer",
  "roleConstraints": ["*"]
}

Tenga en cuenta lo siguiente acerca de los parámetros de entrada:

  • El valor utilizado anteriormente para roleConstraint Es la única opción disponible para la versión actual de Astra. Indica que el usuario no está restringido a determinados espacios de nombres y puede acceder a todos ellos.

Ejemplo de respuesta JSON
{
  "metadata": {
    "creationTimestamp": "2022-07-21T18:59:43Z",
    "modificationTimestamp": "2022-07-21T18:59:43Z",
    "createdBy": "527329f2-662c-41c0-ada9-2f428f14c137",
    "labels": []
  },
  "type": "application/astra-roleBinding",
  "principalType": "group",
  "version": "1.1",
  "id": "2f91b06d-315e-41d8-ae18-7df7c08fbb77",
  "userID": "00000000-0000-0000-0000-000000000000",
  "groupID": "8b5b54da-ae53-497a-963d-1fc89990525b",
  "accountID": "d0fdbfa7-be32-4a71-b59d-13d95b42329a",
  "role": "viewer",
  "roleConstraints": ["*"]
}

Tenga en cuenta lo siguiente sobre los parámetros de respuesta:

  • El valor group para la principalType el campo indica que se ha agregado el enlace de función para un grupo (no un usuario).