Em suma, o consolekit é um serviço que rastreia as sessões do usuário (ou seja, onde um usuário está logado). Ele permite alternar usuários sem efetuar logout (muitos usuários podem estar logados no mesmo hardware ao mesmo tempo com um usuário ativo). Ele também é usado para verificar se uma sessão é "local", ou seja, se um usuário tiver acesso direto ao hardware (que pode ser considerado mais seguro que o acesso remoto). documentação do ConsoleKit .
O PolicyKit permite recursos aperfeiçoados em um ambiente de área de trabalho. Tradicionalmente, apenas um usuário privilegiado (root) tinha permissão para configurar a rede. No entanto, enquanto em um ambiente de servidor, é razoável supor que seria muito limitado não ser permitido conectar-se a um hotspot no laptop, por exemplo. No entanto, você ainda pode não querer dar privilégios totais a essa pessoa (como instalar programas) ou pode limitar as opções para algumas pessoas (por exemplo, em laptops de seus filhos apenas redes 'confiáveis' com filtros dos pais podem ser usadas). Tanto quanto me lembro, funciona como:- Programa envia mensagem ao daemon via dbus sobre ação
- O daemon usa as bibliotecas / configurações do PolicyKit (na verdade, o daemon PolicyKit) para determinar se um usuário pode executar uma ação. Pode acontecer que certas condições sejam cumpridas (como inserir senha ou acesso ao hardware).
- O daemon executa uma ação de acordo com ele (retorna o erro de autenticação ou executa uma ação)
EDITAR atualmente, o ConsoleKit é largamente substituído por logind , que faz parte do systemd , embora exista uma versão autônoma elogind .