Registro de una aplicación de Azure AD para insertar contenido de Power BIRegister an Azure AD app to embed Power BI content

Aprenda a registrar una aplicación en Azure Active Directory (Azure AD) para su uso con la inserción de contenido de Power BI.Learn how to register an application within Azure Active Directory (Azure AD) for use with embedding Power BI content.

Deberá registrar la aplicación con Azure AD para permitir que la aplicación acceda a la API de REST de Power BI.You register your application with Azure AD to allow your application access to the Power BI REST APIs. Esto le permitirá establecer una identidad para la aplicación y especificar los permisos para los recursos de REST de Power BI.This will allow you to establish an identity for your application and specify permissions to Power BI REST resources.

Importante

Antes de registrar una aplicación de Power BI, necesita un inquilino de Azure Active Directory y un usuario de la organización.Before you register a Power BI app you need an Azure Active Directory tenant and an organizational user. Si aún no se ha registrado en Power BI con un usuario del inquilino, el registro de la aplicación no se completará correctamente.If you haven't signed up for Power BI with a user in your tenant, the app registration will not complete successfully.

Hay dos formas de registrar la aplicación.There are two ways to register your application. La primera es con la herramienta de registro de aplicaciones de Power BI o puede hacerlo también directamente en Azure Portal.The first is with the Power BI App Registration Tool or you can do it directly within the Azure portal. La herramienta de registro de aplicaciones de Power BI es la opción más fácil, ya que hay pocos campos para rellenar.The Power BI App Registration Tool is the easiest option since there are just a few fields to fill in. Si quiere realizar cambios en la aplicación, use Azure Portal.If you want to make changes to your app, use the Azure portal.

Registro con la herramienta de registro de aplicaciones de Power BIRegister with the Power BI App Registration Tool

Debe registrar la aplicación en Azure Active Directory para establecer una identidad para la aplicación y especificar permisos para los recursos de REST de Power BI.You need to register your application in Azure Active Directory to establish an identity for your application and specify permissions to Power BI REST resources. Al registrar una aplicación, como una aplicación de consola o un sitio web, recibirá un identificador que la aplicación usará para identificar a estos ante los usuarios a los cuales está solicitando permisos.When you register an application, such as a console app or a web site, you receive an identifier which is used by the application to identify themselves to the users that they are requesting permissions from.

Aquí se muestra cómo registrar la aplicación con la herramienta de registro de aplicaciones de Power BI:Here's how to register your application with the Power BI App Registration Tool:

  1. Vaya a www.powerbi.com/apps.Go to dev.powerbi.com/apps.
  2. Seleccione Iniciar sesión con su cuenta existente.Select Sign in with your existing account.
  3. Proporcione un nombre de la aplicación.Provide an App Name.
  4. La selección del tipo de aplicación dependerá del tipo de aplicación que esté utilizando.The App type selection will depend on the type of application you are using.

    • Use Aplicación web de servidor para las aplicaciones web o las API web.Use Server-side Web app for web apps or web APIs.
    • Use Aplicación nativa para las aplicaciones que se ejecutan en dispositivos cliente.Use Native app for apps that run on client devices. También debe elegir *Aplicación nativa si va a insertar contenido para los clientes independientemente de cual sea la aplicación real. Incluso para aplicaciones web.You will also choose Native app if you are embedding content for your customers regardless of what the actual application is. Even for web applications.***
  5. Escriba un valor para URL de redireccionamiento y URL de página principal.Enter a value for Redirect URL and Home Page URL. Funcionará cualquier dirección URL válida.Any valid URL will work.

    URL de página principal solo está disponible si elige Aplicación web de servidor como tipo de aplicación.Home Page URL is only available if you choose Server-side Web app for the applciation type.

    Para los ejemplos de inserción de contenido para los clientes y de integrate-dashboard-web-app, la URL de redireccionamiento será http://localhost:13526/redirect.For the embedding for your customers and integrate-dashboard-web-app samples, the redirect URL will be http://localhost:13526/redirect. Para el ejemplo de informe y de icono, la URL de redireccionamiento será http://localhost:13526/.For the report and tile sample, the redirect URL will be http://localhost:13526/.

  6. Elija las API a las que esta aplicación tendrá acceso.Choose the APIs that this application will have access to. Para más información sobre los permisos de acceso a Power BI, consulte Permisos de Power BI.For more information about Power BI access permissions, see Power BI Permissions.

  7. Seleccione Registrar aplicación.Select Register App.

    A continuación, se le proporcionará un Id. de cliente.You will then be provided with a Client ID. Si seleccionó Aplicación web de servidor, también recibirá un Secreto de cliente.If you selected Server-side Web app, you will also receive a Client Secret. El Id. de cliente se puede recuperar de Azure Portal más tarde si es necesario.The Client ID can be retrieved from the Azure portal, at a later time, if needed. Si pierde el secreto de cliente, deberá crear uno nuevo en Azure Portal.If you lose the Client Secret, you will need to create a new one within the Azure portal.

Ahora ya puede utilizar la aplicación registrada como parte de su aplicación personalizada para interactuar con el servicio Power BI.You can now use the registered application as part of your custom application to interact with the Power BI service.

Importante

Si va a insertar contenido para los clientes, deberá configurar permisos adicionales en Azure Portal.If you are embedding content for your customers, you will need to configure additional permissions within the Azure portal. Para más información, consulte Aplicar permisos a la aplicación.For more information, see Apply permissions to your application.

Registro con Azure PortalRegister with the Azure portal

La otra opción para registrar la aplicación consiste en hacerlo directamente en Azure Portal.Your other option for registering your application is to do so directly in the Azure portal. Para registrar la aplicación, siga estos pasos.To register your application, follow these steps.

  1. Acepte los Términos de la API de Microsoft Power BI.Accept the Microsoft Power BI API Terms.
  2. Inicie sesión en Azure Portal.Sign into the Azure portal.
  3. Elija al inquilino de Azure AD mediante la selección de la cuenta en la esquina superior derecha de la página.Choose your Azure AD tenant by selecting your account in the top right corner of the page.
  4. En el panel de navegación izquierdo, elija Mas servicios, seleccione Registros de aplicaciones en Seguridad e identidad, y seleccione Nuevo registro de aplicaciones.In the left-hand navigation pane, choose More Services, select App Registrations under Security + Identity and select New application registration.

  5. Siga las indicaciones y cree una nueva aplicación.Follow the prompts and create a new application.

    • Para aplicaciones web, proporcione la URL de inicio de sesión, que es la dirección URL base de la aplicación, en la que los usuarios pueden iniciar sesión como, por ejemplo, http://localhost:13526.For Web Applications, provide the Sign-On URL, which is the base URL of your app, where users can sign in e.g http://localhost:13526.
    • Para aplicaciones nativas, proporcione un URI de redireccionamiento que usará Azure AD para devolver las respuestas de token.For Native Applications, provide a Redirect URI, which Azure AD uses to return token responses. Escriba un valor que sea específico para la aplicación como, por ejemplo, http://myapplication/redirectEnter a value specific to your application, .e.g http://myapplication/redirect

Para más información sobre cómo registrar aplicaciones en Azure Active Directory, consulte Integración de aplicaciones con Azure Active DirectoryFor more information about how to register applications in Azure Active Directory, see Integrating applications with Azure Active Directory

Cómo obtener el identificador de clienteHow to get the client id

Al registrar una aplicación, recibirá un identificador de cliente.When you register an application, you receive a Client ID. La aplicación usa el identificador de cliente para identificarse ante los usuarios a los que solicita permisos.The Client ID is used by the application to identify themselves to the users that they are requesting permissions from.

A continuación se indica cómo obtener un identificador de cliente:Here's how to get a client id:

  1. Inicie sesión en Azure Portal.Sign into the Azure portal.
  2. Elija al inquilino de Azure AD mediante la selección de la cuenta en la esquina superior derecha de la página.Choose your Azure AD tenant by selecting your account in the top right corner of the page.
  3. En el panel de navegación izquierdo, elija Mas servicios y seleccione Registros de aplicaciones.In the left-hand navigation pane, choose More Services and select App Registrations.
  4. Seleccione la aplicación de la que desea recuperar el identificador de cliente.Select the application that you want to retrieve the client id for.
  5. Puede ver que el Id. de la aplicación aparece como un GUID.You will see Application ID listed as a GUID. Este es el identificador de cliente para la aplicación.This is the client id for the application.

    Identificador de cliente que aparece como identificador de la aplicación en el registro de aplicaciones

Aplicar permisos a la aplicación en Azure ADApply permissions to your application within Azure AD

Importante

Esta sección solo está destinada a las aplicaciones que insertan contenido para la organización.This section only applies to applications that are embedding content for your organization.

Tendrá que habilitar permisos adicionales para la aplicación, además de los proporcionados en la página de registro de la aplicación.You will need to enable additional permissions to your application in addition to what was provided in app registration page. Puede hacerlo por medio del portal de Azure AD o mediante programación.You can accomplish this through the Azure AD portal, or programmatically.

Tendrá que iniciar sesión con la cuenta maestra, que se usó para la inserción, o con una cuenta de administrador global.You will want to be logged in with either the master account, used for embedding, or a Global admin account.

Usar el portal de Azure ADUsing the Azure AD portal

  1. Vaya a Registros de aplicaciones en Azure Portal y seleccione la aplicación que va a usar para insertar.Browse to App registrations within the Azure portal and select the app that you are using for embedding.

  2. Seleccione Permisos necesarios en Acceso de API.Select Required permissions under API Access.

  3. Seleccione Microsoft Azure Active Directory y asegúrese de que la opción Acceder al directorio como usuario con sesión iniciada esté activada.Select Windows Azure Active Directory and then make sure Access the directory as the signed-in user is selected. Seleccione Guardar.Select Save.

  4. En Permisos necesarios, seleccione Servicio Power BI (Power BI).Within Required permissions, select Power BI Service (Power BI).

    Nota

    Si creó la aplicación directamente en el portal de Azure AD, la opción Servicio Power BI (Power BI) puede no aparecer.If you created the app directly in the Azure AD portal, Power BI Service (Power BI) may not be present. Si no está, seleccione + Agregar y luego 1 Seleccionar una API.If it is not, select + Add and then 1 Select and API. Seleccione Servicio Power BI en la lista de API y luego Seleccionar.Select Power BI Service in the API list and select Select. Si Servicio Power BI (Power BI) no está disponible en + Agregar, suscríbase a Power BI con al menos un usuario.If Power BI Service (Power BI) is not available within + Add, sign up for Power BI with at least one user.

  5. Seleccione todos los permisos en Permisos delegados.Select all permissions under Delegated Permissions. Debe seleccionarlos uno por uno para guardar las selecciones realizadas.You will need to select them one by one in order to save the selections. Seleccione Guardar cuando haya finalizado.Select Save when done.

  6. En Permisos necesarios, seleccione Conceder permisos.Within Required permissions, select Grant Permissions.

    La acción Conceder permisos es necesaria para evitar que Azure AD le solicite consentimiento a la cuenta maestra.The Grant Permissions action is needed for the master account to avoid being prompted for consent by Azure AD. Si la cuenta que realiza esta acción es de un administrador global, concederá permisos a todos los usuarios dentro de su organización para esta aplicación.If the account performing this action is a Global Admin, you will grant permissions to all users within your organization for this application. Si la cuenta que realiza esta acción es la cuenta maestra y no es un administrador global, concederá permisos solo para la cuenta maestra de esta aplicación.If the account performing this action is the master account and is not a Global Admin, you will grant permissions only to the master account for this application.

    Conceder permisos en el cuadro de diálogo de permisos necesarios

Aplicar permisos mediante programaciónApplying permissions programmatically

  1. Debe obtener las entidades de servicio (usuarios) existentes dentro de su inquilino.You will need to get the existing service principals (users) within your tenant. Para información sobre cómo hacerlo, consulte Get servicePrincipal.For information on how to do that, see Get servicePrincipal.

    Puede llamar a la API Get servicePrincipal sin {id} y obtendrá todas las entidades de servicio en el inquilino.You can call the Get servicePrincipal api without {id} and it will get you all of the service principals within the tenant.

  2. Busque una entidad de servicio con el identificador de cliente de aplicación como la propiedad appId.Check for a service principal with you app client id as appId property.
  3. Cree un plan de servicio si la aplicación carece de él.Create a new service plan if missing for your app.

    Post https://graph.microsoft.com/beta/servicePrincipals
    Authorization: Bearer ey..qw
    Content-Type: application/json
    {
    "accountEnabled" : true,
    "appId" : "{App_Client_ID}",
    "displayName" : "{App_DisplayName}"
    }
    
  4. Conceda el permiso de aplicación a la API de Power BI.Grant App Permission to PowerBI API

    Post https://graph.microsoft.com/beta/OAuth2PermissionGrants
    Authorization: Bearer ey..qw
    Content-Type: application/json
    { 
    "clientId":"{Service_Plan_ID}",
    "consentType":"AllPrincipals",
    "resourceId":"c78b2585-1df6-41de-95f7-dc5aeb7dc98e",
    "scope":"Dataset.ReadWrite.All Dashboard.Read.All Report.Read.All Group.Read Group.Read.All Content.Create Metadata.View_Any Dataset.Read.All Data.Alter_Any",
    "expiryTime":"2018-03-29T14:35:32.4943409+03:00",
    "startTime":"2017-03-29T14:35:32.4933413+03:00"
    }
    
  5. Conceda el permiso de aplicación a AAD.Grant App Permission to AAD

    El valor de consentType dependerá del usuario que realiza la solicitud.The value for consentType will depend on the user performing the request. Puede proporcionar AllPrincipals o Principal.You can supply either AllPrincipals or Principal. Solo un administrador puede usar AllPrincipals para conceder permisos a todos los usuarios.AllPrincipals can only be used by an administrator to grant permission to all users. Principal se usa para conceder permiso a un usuario específico.Principal is used to grant permission to a specific user.

    La concesión de permisos es necesaria para evitar que Azure AD le solicite consentimiento a la cuenta maestra.The permission grant is needed for the master account to avoid being prompted for consent by Azure AD.

    Si va a usar un inquilino actual y no le interesa conceder permisos en nombre de todos sus usuarios, puede concederlos a un usuario específico reemplazando el valor de contentType por Principal.If you are using an existing tenant, and not interested in granting permissions on behalf of all tenant users, you can grant permissions to a specific user by replacing the value of contentType to Principal.

    Post https://graph.microsoft.com/beta/OAuth2PermissionGrants
    Authorization: Bearer ey..qw
    Content-Type: application/json
    { 
    "clientId":"{Service_Plan_ID}",
    "consentType":"AllPrincipals",
    "resourceId":"61e57743-d5cf-41ba-bd1a-2b381390a3f1",
    "scope":"User.Read Directory.AccessAsUser.All",
    "expiryTime":"2018-03-29T14:35:32.4943409+03:00",
    "startTime":"2017-03-29T14:35:32.4933413+03:00"
    }
    

Pasos siguientesNext steps

Ahora que ha registrado su aplicación en Azure AD, deberá autenticar los usuarios dentro de esta.Now that you have registered your application within Azure AD, you will need to authenticate users within your application. Consulte Autenticación de usuarios y obtención de un token de acceso de Azure AD para la aplicación de Power BI.Have a look at Authenticate users and get an Azure AD access token for your Power BI app to learn more.

¿Tiene más preguntas?More questions? Pruebe a preguntar a la comunidad de Power BITry asking the Power BI Community