# Agente de autorização

## Manual

O Agente de Autorizações é o aplicativo que é invocado sempre que um usuário quiser obter uma determinada autorização. É um serviço ativado por &DBus;, que usa a libpolkit-grant, que por sua vez usa o PAM para os serviços de autenticação (contudo, outras infraestruturas de autenticação poderão ser acopladas de acordo com as suas necessidades).

## Diálogo do agente de autorização

A aparência da janela de autenticação depende do resultado do PolicyKit e também da autenticação do administrador que está definida como autenticar-se como usuário 'root' ou autenticar-se como um dos usuários do grupo de UNIX 'wheel' ou como se encontra configurada a biblioteca do PolicyKit (veja a página de manual do PolicyKit.conf(5) para saber mais detalhes). Repare que algumas das imagens abaixo foram feitas num sistema configurado para usar o módulo PAM ThinkFinger. O texto apresentado nas janelas de autenticação vem dos arquivos XML '.policy' que se encontram em /usr/share/PolicyKit/policy e é lido pelo serviço de autenticação, quando um aplicativo pede uma determinada autorização. Como tal, o que o usuário vê não está sob o controle do aplicativo (p.ex., não é passado pelo aplicativo), o que elimina uma classe de ataques, nos quais os aplicativos tentam enganar o usuário para conseguir ganhar um determinado privilégio.

A janela de autenticação em que é pedido ao usuário para se autenticar como 'root', inserindo a senha ou lendo a digital. Os detalhes mostram o aplicativo que está pedindo a ação, a ação propriamente dita e o fornecedor da ação. Clicar na ligação da ação, irá abrir o gerenciador de autorizações que aponta para a ação indicada, e o fornecedor terá também de fornecer uma referência para ação que será disparada ao clicar na referência Fornecedor:

A janela de autenticação solicitando ao 'root' para se autenticar ou fazer a leitura da digital e mostrando descrições

A janela de autenticação onde é solicitado ao usuário para se autenticar como um usuário administrativo, e onde o PolicyKit está configurado para usar a senha de 'root' para isto:

A janela de autenticação solicitando pelo 'root'

A janela de autenticação, onde é pedido ao usuário para se autenticar como um usuário administrativo, e onde o PolicyKit está configurado para usar um grupo para isto:

A janela de autenticação solicitando um usuário do grupo administrativo

A mesma janela de autenticação, mostrando a lista de onde se poderá selecionar o usuário:

A mesma janela de autenticação, mostrando a lista de onde se poderá selecionar o usuário

A janela de autenticação mostrando uma ação em que o privilégio pode ser retido por um período indefinido:

A janela de autenticação mostrando uma ação em que o privilégio pode ser retido por um período indefinido

A janela de autenticação mostrando uma ação em que o privilégio pode ser retido apenas durante a sessão do ambiente de trabalho:

A janela de autenticação mostrando uma ação em que o privilégio pode ser retido apenas durante a sessão do ambiente de trabalho