Inserir um relatório em um site ou portal seguro
Com a opção Inserir para relatórios do Power BI, você pode inserir relatórios em portais Web internos com facilidade e segurança. Esses portais podem ser baseados em nuvem ou hospedados localmente, como o SharePoint 2019. Os relatórios inseridos respeitam todas as permissões de item e a segurança de dados por meio da RLS (segurança em nível de linha) e da OLS (segurança no nível do objeto) do modelo tabular do Analysis Services. Eles fornecem a inserção sem código em qualquer portal que aceite uma URL ou iFrame.
A opção Inserir dá suporte aos filtros de URL e às configurações de URL. Essa opção permite a integração com portais usando uma abordagem de código baixo que requer apenas conhecimentos básicos de HTML e JavaScript.
Importante
Devido às contínuas atualizações de segurança do Chromium, a opção Inserir não funciona mais exatamente como antes, e os usuários podem ser solicitados a se autenticar mais de uma vez. Para resolver isso, considere criar sua própria solução inserida do Power BI.
Como inserir relatórios do Power BI em portais
Abra um relatório no serviço do Power BI.
No menu Arquivo, selecione Inserir relatório>Site ou portal.
Na caixa de diálogo Código de inserção segura exibida, selecione o valor em Aqui está um link que você pode usar para inserir esse conteúdo. Alternativamente, para usar um iframe em um blog ou site, selecione o valor em HTML que você pode colar em um site.
Quer um usuário abra uma URL de relatório diretamente ou um inserido em um portal da Web, o acesso ao relatório exigirá autenticação. A tela a seguir será exibida se o usuário não tiver entrado no Power BI na sessão atual do navegador. Ao selecionar Entrar, uma nova janela ou guia do navegador será aberta. Se não for solicitado que o usuário entre, será necessário verificar se há bloqueadores de pop-up ativados.
Depois que o usuário entrar, o relatório será aberto e mostrará os dados, permitindo a navegação pelas páginas e a configuração de filtros. Somente usuários com permissão de exibição podem ver o relatório no Power BI. Todas as regras de RLS (Segurança em Nível de Linha) também são aplicadas. Os usuários precisam ser licenciados corretamente. Eles precisam ter uma licença do Power BI Pro ou PPU (Premium por Usuário), ou o conteúdo precisa estar em um workspace que esteja em uma capacidade do Power BI Premium. Os usuários precisam entrar toda vez que abrem uma nova janela do navegador. No entanto, uma vez conectados, outros relatórios serão carregados automaticamente.
Quando você usa um iframe, talvez seja necessário editar os valores de altura e largura para que caibam na página da web do seu portal.
<iframe width="1080" height="760" src="https://app.powerbi.com/reportEmbed?reportId=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx&autoAuth=true" frameborder="0" allowFullScreen="true"></iframe>
Conceder acesso ao relatório
A opção Inserir não permite automaticamente que os usuários exibam o relatório. As permissões de exibição são definidas no serviço do Power BI.
No serviço Power BI, você pode compartilhar relatórios inseridos com usuários que precisam de acesso. Se você usar um grupo do Microsoft 365, poderá listar o usuário como um membro do workspace.
Licenciamento
Para exibir o relatório inserido, você precisa de uma licença do Power BI Pro ou PPU (Premium por Usuário). Ou o conteúdo precisa estar em um workspace em uma capacidade do Power BI Premium (EM ou P SKU).
Personalize sua experiência de inserção usando as configurações de URL
Você pode personalizar a experiência do usuário usando as configurações de entrada da URL de inserção. No iframe fornecido, você pode atualizar as configurações de src da URL.
Propriedade | Descrição |
---|---|
pageName | Você pode usar o parâmetro de cadeia de caracteres de consulta pageName para definir qual página do relatório abrir. Você pode encontrar esse valor no final da URL do relatório ao exibir um relatório no serviço Power BI, conforme mostrado posteriormente neste artigo. |
Filtros de URL | Você pode usar Filtros de URL na URL de inserção recebida da interface do usuário do Power BI a fim de filtrar o conteúdo da inserção. Dessa forma, você pode criar integrações de código baixo tendo apenas experiências básicas em HTML e JavaScript. |
Definir qual página é aberta para um relatório inserido
Você pode encontrar o valor pageName no final da URL do relatório ao exibir um relatório no serviço do Power BI.
Abra o relatório no serviço do Power BI em seu navegador da Web e copie a URL da barra de endereço.
https://app.powerbi.com/groups/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/reports/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/ReportSection2
Anexe a propriedade pageName e seu valor ao final da URL.
https://app.powerbi.com/reportEmbed?reportId=/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx&autoAuth=true&pageName=ReportSection2
Filtrar o conteúdo do relatório usando filtros de URL
Você pode usar filtros de URL para fornecer diferentes exibições de um relatório. Por exemplo, a URL a seguir filtra o relatório para mostrar dados do setor de energia.
Usar a combinação de pageName e Filtros de URL pode ser poderosa. Você pode criar experiências usando HTML e JavaScript básicos.
Por exemplo, eis um botão que você pode adicionar a uma página HTML:
<button class="textLarge" onclick='show("ReportSection", "Energy");' style="display: inline-block;">Show Energy</button>
Quando selecionado, o botão chama uma função de atualização do iframe com uma URL atualizada, que inclui o filtro do setor de energia.
function show(pageName, filterValue)
{
var newUrl = baseUrl + "&pageName=" + pageName;
if(null != filterValue && "" != filterValue)
{
newUrl += "&$filter=Industries/Industry eq '" + filterValue + "'";
}
//Assumes there's an iFrame on the page with id="iFrame"
var report = document.getElementById("iFrame")
report.src = newUrl;
}
https://app.powerbi.com/reportEmbed?reportId=/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx&autoAuth=true&pageName=ReportSection&filter=Industries/Industry eq 'Energy'
Você pode adicionar quantos botões desejar para criar uma experiência personalizada de código baixo.
Considerações e limitações
Os relatórios paginados são compatíveis com cenários de inserção seguros, e os relatórios paginados com parâmetros de URL também são compatíveis. Para obter mais informações, confira Passar um parâmetro de relatório em uma URL para um relatório paginado no Power BI.
A opção de inserção segura funciona para relatórios publicados no serviço do Power BI.
Para hospedar conteúdo incorporado com segurança, os usuários precisam usar HTTPS para a página de nível superior deles. Não há suporte para o uso de uma página de host não segura para acessar conteúdo incorporado com segurança.
O usuário precisa fazer login para visualizar o relatório sempre que abrir uma nova janela ou guia do navegador.
Para autenticação, os usuários precisam ter janelas pop-up habilitadas.
Se os usuários acessaram relatórios com êxito no passado, mas agora estão encontrando problemas, eles devem limpar o cache do navegador deles.
Alguns navegadores exigem que você atualize a página após entrar, especialmente ao usar os modos InPrivate ou Incognito.
Você poderá encontrar problemas se usar versões de navegador sem suporte. Para obter uma lista de navegadores compatíveis com o Power BI, confira Navegadores com suporte para o Power BI.
Se o site definir o cabeçalho COOP (Cross-Origin-Opener-Policy) como "same-origin", você não poderá entrar para exibir o conteúdo inserido porque a MSAL não dá suporte a esse cabeçalho. Em vez disso, escolha "restrict-properties" (para navegadores baseados em Chromium) ou "same-origin-allow-popups". Como alternativa, se você não puder alterar o Cross-Origin-Opener-Policy, vincule à URL inserida diretamente, em vez de inseri-la em um iframe.
Não há suporte para o servidor do SharePoint clássico pois ele requer versões anteriores ao Internet Explorer 11 ou a habilitação do modo de exibição de compatibilidade.
Para obter uma experiência de logon único, use a opção Inserir no SharePoint Online ou crie uma integração personalizada usando o método de inserção o usuário possui dados.
Os recursos de autenticação automática fornecidos com a opção de Inserção não funcionam com a API JavaScript do Power BI. Eles são bloqueados no SDK do cliente inserido do PBI a partir da versão 2.10.4. Para a API JavaScript do Power BI, use o método de inserção usuário é o proprietário de dados.
Os recursos de autenticação automática não funcionam quando estão incorporados em aplicativos, inclusive em aplicativos móveis e de área de trabalho.
O tempo de vida do token de autenticação é controlado com base nas configurações do Microsoft Entra. Quando o token de autenticação expirar, o usuário precisará entrar novamente para obter um token de autenticação atualizado. O tempo de vida padrão é de uma hora, mas ele pode ser mais curto ou mais longo na sua organização. Não é possível atualizar automaticamente o token nesse cenário.