Microsoft Purview: Melhorando a governança no SharePoint
O Microsoft Purview é uma solução abrangente para gerenciar governança de dados, conformidade e segurança em todo o ambiente de…
Neste artigo, mostraremos que você pode tornar os links diretos no Canvas App do Power Apps restritivos aos dados exibidos para um usuário quando ele inicia o aplicativo a partir de um URL parametrizado.
Primeiramente, vamos dar uma olhada em um cenário de aprovação em que um gerente deve visualizar apenas os dados de seus relatores e toda vez que um usuário cria uma solicitação, um e-mail com um link para o aplicativo é enviado ao gerente. Assim, o gerente pode visualizar os dados relacionados à solicitação de aprovação clicando no link no e-mail que o leva diretamente à página de detalhes do item que requer a revisão por meio de links diretos.
No entanto, quando o gerente clica no link, a URL de redirecionamento no navegador exibe o parâmetro que foi passado e se este for alterado, os demais itens correspondentes ao parâmetro poderão ser visualizados. Por exemplo, no caso de aprovação, a fonte de dados usada é uma lista do SharePoint e os itens são identificados por meio do ID e os gerentes são identificados pela coluna de pessoa na lista. Vamos criar o aplicativo de forma que, com base no usuário que acessa o aplicativo, seja realizada uma validação para verificar se o usuário tem permissão para acessar o item através do campo tipo pessoa e se é permitido apenas mostrar os detalhes do item ou então mostrar uma mensagem de erro.
Então, vamos começar com um exemplo básico. Assim, aqui, criei um aplicativo usando o modelo “Iniciar com dados” e conectei ao SharePoint como fonte de dados.
if(
!IsBlank(Param("ItemId")),
Set(ParamId,Param("ItemId"));
Navigate(EditScreen1);
)
If(
!IsBlank(ParamId),
LookUp(
KLIOS,
ID = Valor(ParamId)
),
BrowseGallery1.Selected
)
Aqui, estamos definindo a variável ParamId como Blank porque se o usuário selecionar qualquer item da galeria, não queremos padronizar o registro passado no parâmetro.
If(
!IsBlank(Param("ItemId")),
With(
{
AssociatedRecord: LookUp(
KLIOS,
ID = Value(Param("ItemId"))
)
},
If(
AssociatedRecord.Approver.Email = User().Email,
Navigate(EditScreen1);
Set(
AllowedToEdit,
true
),
Navigate(NotAllowedPage);
Set(
AllowedToEdit,
false
)
)
)
)
Explicação : Primeiro verifica se há um parâmetro presente para o link direto. Se não houver um parâmetro com o nome “ItemId”, o usuário será direcionado para a primeira tela do aplicativo. Caso exista um parâmetro que exista com o nome “ItemId”, então verificará se o valor passado no parâmetro possui um aprovador como usuário logado. Se a pessoa logada for o aprovador, ele abre o registro em modo de edição. Senão leva o usuário para uma tela separada mostrando uma mensagem de erro.
AllowedToEdit é uma variável que é utilizada na configuração de outras telas para identificar se o usuário logado está no primeiro nível de segurança ou não.
If(
AllowedToEdit,
LookUp(
KLIOS,
ID = Value(Param("ItemId"))
),
BrowseGallery1.Selected
)
Explicação : Isso verifica se a variável AllowedToEdit está definida como true, depois mostra o registro identificado pelo parâmetro de link direto, senão mostra o selecionado da galeria.
Neste caso, estamos usando um formulário de edição, então a expressão é usada na propriedade Item. Se houver qualquer outro controle, você precisará selecionar a propriedade apropriada. Para controles individuais, você pode armazenar os valores em uma variável ou coleção para salvar chamadas de API.
Defina a variável AllowedToEdit para em branco no EditScreen oculto, para que a variável seja redefinida para qualquer outra navegação na tela e mostre o item selecionado da galeria conforme o esperado.
Tela -> OnHidden -> Set( AllowedToEdit ,false)
Nesta postagem, vimos como personalizar um aplicativo de tela do Power Apps para habilitar links diretos restritivos para aprimorar a segurança dos dados. Uma configuração pode ser usada para onde o requisito é apenas mostrar dados ou obter uma entrada em itens específicos e etc.
Espero que você tenha achado isso interessante e tenha ajudado você. Obrigado por ler! Para mais conteúdos excelentes, confira nosso blog.
O Microsoft Purview é uma solução abrangente para gerenciar governança de dados, conformidade e segurança em todo o ambiente de…
O Power BI Desktop recentemente integrou uma ferramenta poderosa chamada Copilot, que utiliza IA para auxiliar os usuários na geração…
Um sistema de relatórios gerenciais eficaz é fundamental para impulsionar decisões estratégicas em uma organização. Portanto, com os avanços tecnológicos…