channel: doesUserHaveAccess

Espacio de nombres: microsoft.graph

Importante

Las API de la versión /beta de Microsoft Graph están sujetas a cambios. No se admite el uso de estas API en aplicaciones de producción. Para determinar si una API está disponible en la versión 1.0, use el selector de Versión.

Determine si un usuario tiene acceso a un canal compartido.

Esta API está disponible en las siguientes implementaciones nacionales de nube.

Servicio global Gobierno de EE. UU. L4 Us Government L5 (DOD) China operada por 21Vianet

Permissions

Elija el permiso o los permisos marcados como con privilegios mínimos para esta API. Use un permiso o permisos con privilegios superiores solo si la aplicación lo requiere. Para obtener más información sobre los permisos delegados y de aplicación, consulte Tipos de permisos. Para obtener más información sobre estos permisos, consulte la referencia de permisos.

Tipo de permiso Permisos con privilegios mínimos Permisos con privilegios más altos
Delegado (cuenta profesional o educativa) ChannelMember.Read.All ChannelMember.ReadWrite.All
Delegado (cuenta personal de Microsoft) No admitida. No admitida.
Aplicación ChannelMember.Read.All ChannelMember.ReadWrite.All

Solicitud HTTP

GET /teams/{team-id}/channels/{channel-id}/doesUserHaveAccess(userId='@userId',tenantId='@tenantId',userPrincipalName='@userPrincipalName')

Parámetros de función

En la dirección URL de la solicitud, proporcione los siguientes parámetros de consulta con valores. La siguiente tabla muestra los parámetros que se pueden usar con esta función.

Parámetro Tipo Descripción
tenantId Cadena Identificador del inquilino Microsoft Entra al que pertenece el usuario. El valor predeterminado de esta propiedad es el valor tenantId actual del usuario o la aplicación que ha iniciado sesión.
userId Cadena Identificador único para el usuario. Especifique el userId o la propiedad userPrincipalName en la solicitud.
userPrincipalName Cadena Nombre principal de usuario (UPN) del usuario. Especifique el userId o la propiedad userPrincipalName en la solicitud.

Encabezados de solicitud

Nombre Descripción
Authorization {token} de portador. Obligatorio. Obtenga más información sobre la autenticación y la autorización.

Cuerpo de la solicitud

No proporcione un cuerpo de solicitud para esta función.

Respuesta

Si se ejecuta correctamente, esta función devuelve un código de respuesta 200 OK y un objeto Boolean en el cuerpo de la respuesta.

Ejemplos

Ejemplo 1: Comprobación del acceso de un usuario interno

En el ejemplo siguiente se muestra una solicitud que comprueba si un usuario interno tiene acceso a un canal compartido.

Solicitud

En el ejemplo siguiente se muestra la solicitud.

GET https://graph.microsoft.com/beta/teams/0fddfdc5-f319-491f-a514-be1bc1bf9ddc/channels/19:33b76eea88574bd1969dca37e2b7a819@thread.skype/doesUserHaveAccess(userId='6285581f-484b-4845-9e01-60667f8b12ae')

Respuesta

En el ejemplo siguiente se muestra la respuesta.

HTTP/1.1 200 OK
Content-Type: application/json

{
  "value": true
}

Ejemplo 2: Comprobación del acceso de un invitado

En el ejemplo siguiente se muestra una solicitud que usa la propiedad tenantId para comprobar si un invitado tiene acceso a un canal compartido.

Solicitud

En el ejemplo siguiente se muestra la solicitud.

GET https://graph.microsoft.com/beta/teams/0fddfdc5-f319-491f-a514-be1bc1bf9ddc/channels/19:33b76eea88574bd1969dca37e2b7a819@thread.skype/doesUserHaveAccess(userId='62855810-484b-4823-9e01-60667f8b12ae', tenantId='57fb72d0-d811-46f4-8947-305e6072eaa5')

Respuesta

En el ejemplo siguiente se muestra la respuesta.

HTTP/1.1 200 OK
Content-Type: application/json

{
  "value": true
}

Ejemplo 3: Comprobación del acceso de usuario para un usuario mediante el nombre principal de usuario

En el ejemplo siguiente se muestra una solicitud que usa la propiedad userPrincipalName para comprobar si un usuario interno tiene acceso a un canal compartido.

Solicitud

En el ejemplo siguiente se muestra la solicitud.

GET https://graph.microsoft.com/beta/teams/0fddfdc5-f319-491f-a514-be1bc1bf9ddc/channels/19:33b76eea88574bd1969dca37e2b7a819@thread.skype/doesUserHaveAccess(userPrincipalName='john.doe@contoso.com')

Respuesta

En el ejemplo siguiente se muestra la respuesta.

HTTP/1.1 200 OK
Content-Type: application/json

{
  "value": false
}