Compartir a través de


Ejemplo: Blazor WebAssembly con Global Discovery

Este ejemplo muestra cómo usar el servicio Global Discovery desde una aplicación Blazor WebAssembly.

Puede descargar el ejemplo desde https://github.com/microsoft/PowerApps-Samples/tree/master/dataverse/webapi/C#/BlazorCDS

Este ejemplo es una modificación de los pasos del Tutorial: Crear un ASP.NET Aplicación Core Blazor WebAssembly usando Microsoft Dataverse

Puede probar esta muestra en línea aquí: https://blazorcds.mohsinonxrm.com/

Cómo ejecutar esta muestra

  1. Descargar o clonar el informe de Muestras para que tenga una copia local.
  2. Siga las instrucciones en Configuración para crear un registro de aplicación de Microsoft Entra ID y ejecutar la muestra.

Qué hace este ejemplo

Este ejemplo demuestra cómo proporcionar un control de selección (desplegable) en una aplicación web para permitir que los usuarios cambien de entorno a los que tienen acceso.

Cómo funciona este ejemplo

El archivo Pages/EnvironmentChooser.razor proporciona la interfaz de usuario para permitir que los usuarios seleccionen entre los entornos disponibles en función de sus credenciales después de haber iniciado sesión.

Esta página depende de una definición con nombre de un HttpClient (GDSClient) en Program.cs que está configurado para acceder al Global Discovery Service. El acceso al Global Discovery Service se agrega a los ámbitos disponibles cuando el usuario inicia sesión. Cuando el usuario selecciona un entorno diferente, el SelectedEnvUrl en Models/AppState.cs cambia.

El acceso a los registros de la cuenta es proporcionado por Pages/FetchAccounts.razor con un token de acceso que depende del entorno seleccionado.

Configurar

Para ejecutar este ejemplo, primero debe configurar una aplicación de Microsoft Entra ID en su inquilino y actualizar el archivo BlazorCDS\wwwroot\appsettings.json para reemplazar el valor del marcador de posición ClientId con el identificador de la aplicación (cliente). Utilice los siguientes pasos:

Crear un registro de aplicación

  1. Vaya a Azure.

  2. Seleccione Microsoft Entra ID.

  3. Vaya a Registros de aplicaciones.

  4. Seleccione Nuevo registro.

  5. Escriba lo siguiente:

    Campo Valor
    Nombre Su elección. Puede usar: BlazorGlobalDiscoverySample
    Tipos de cuenta admitidos: Cuentas en este directorio organizativo solamente (inquilino único)
    Redirigir URI (opcional) https://localhost:44363/authentication/login-callback
  6. Haga clic en Registrar.

  7. Copie el valor de Id. de aplicación (cliente). Necesitará esto cuando Actualice el proyecto.

Configurar autenticación

  1. Ir a Autenticación.

  2. En Subvención implícita y flujos híbridos, seleccione las dos opciones siguientes:

    • Tokens de acceso (utilizados para flujos implícitos)
    • Tokens de ID (utilizados para flujos implícitos e híbridos)
  3. Haga clic en Guardar.

Configurar permisos

  1. Vaya a Permisos de API.
  2. Haga clic en Agregar permisos.
  3. En el desplegable Solicitar permisos de API, bajo la pestaña API de Microsoft, seleccione Dynamics CRM.
  4. En Seleccionar permisos, seleccione user_impersonation.
  5. Haga clic en Agregar permisos.
  6. En Permisos configurados, haga clic en Otorgar consentimiento de administrador para {su nombre de inquilino.}
  7. En el cuadro de diálogo Otorgar consentimiento de administrador, haga clic en .

Actualizar el proyecto

  1. Abra el archivo de la solución BlazorCDS Visual Studio (BlazorCDS.sln) con Visual Studio.
  2. En el Explorador de soluciones, expanda wwwroot y abra el archivo appsettings.json.
  3. Reemplazar el valor del marcador de posición ClientId (11111111-1111-1111-1111-111111111111) con el valor de ID de la aplicación (cliente) que copió en Crear un registro de aplicación.

Ejecutar el ejemplo

En Visual Studio, haga clic en IIS Express para ejecutar la muestra.

Demostración

  1. En la ventana del navegador que se abre con la aplicación, haga clic Iniciar sesión.
  2. Ingrese sus credenciales y verá un control de selección con la etiqueta: Elija un entorno. El control de selección debe enumerar todos los entornos a los que tiene acceso con las credenciales que proporcionó.
  3. Haga clic en Capturar cuentas. Esto debería mostrar una lista de registros de cuenta a los que tiene acceso para ver en el entorno seleccionado.
  4. Si tiene más de un entorno para elegir, seleccione un entorno diferente y la lista de registros de cuenta se actualizará para representar los registros disponibles en ese entorno.

Limpiar

Este ejemplo no realiza cambios en los datos de su entorno.

Consulte también

Detectar organizaciones de usuario
Ejemplo: Global Discovery Service (C#)

Nota

¿Puede indicarnos sus preferencias de idioma de documentación? Realice una breve encuesta. (tenga en cuenta que esta encuesta está en inglés)

La encuesta durará unos siete minutos. No se recopilan datos personales (declaración de privacidad).