Senha para aplicativos

3

Eu quero limitar o acesso a aplicativos em execução com uma senha. Isso é possível? Eu tenho um aplicativo no ícone da bandeja e quero fechá-lo para acesso não autorizado.

Saudações

    
por kleinempfaenger 08.04.2014 / 21:42

2 respostas

3

A configuração a seguir é adequada para uso em "casa, jardim e cozinha", quando nenhuma segurança específica é necessária. Eu também preciso dizer que ainda é possível abrir o aplicativo através da linha de comando; é estritamente para uso "indoor", para evitar que as crianças acessem um aplicativo, por exemplo.

O truque é redirecionar o comando no arquivo da área de trabalho do aplicativo para um script que chama o aplicativo, desde que a senha correta seja fornecida. A configuração pode ser desfeita facilmente.

Abaixo estão dois scripts, um para chamar a janela para inserir a senha (script1) e um para processar a senha fornecida (script2).

Prepare os scripts:

script1, chame a janela do zenity para digitar a senha:

#!/bin/sh

if zenity --entry \
--title="Restricted!" \
--text="Enter your _password:" \
--entry-text "password" \
--hide-text
  then echo $?
  else echo "No password entered"
fi

Copie o texto acima, cole-o em um documento vazio, salve-o em ~/ como "passwordwindow" e torne-o executável.

script2 para processar a senha fornecida:

#!/usr/bin/python3

import subprocess

# application_name = the command to start the application:
application_name = "application_name"
# enter the required password here:
password = "password"
# enter the path to script1 here (for example ~/passwordwindow):
path_to_script1 = "path_to_script1"

getpassword = subprocess.Popen([path_to_script1], stdout=subprocess.PIPE)
passwordinput = getpassword.communicate()[0].decode("utf-8").replace("\n0\n", "")
if passwordinput == password:
    subprocess.call([application_name])
else:
    pass

Copie o texto acima, cole-o em um documento vazio e substitua as seguintes entradas no cabeçalho do script:

  • substitua no script o "application_name" pelo comando para abrir o aplicativo. Se você não sabe, abra o arquivo da área de trabalho do aplicativo, localizado em /usr/share/applications , com gedit e copie o que vem depois de "Exec=".
  • substitua "senha" pela senha exigida.
  • substitua "path_to_script1" pelo caminho real para script1 (por exemplo, "/ home / yourname / passwordwindow").

inclua as citações.

Salve o arquivo (oculto) como .myownpassword.py em ~/

Prepare o arquivo .desktop:

Para finalizar a configuração:

  • copie o arquivo da área de trabalho do aplicativo em /usr/share/applications to ~ / .local / share / applications '
  • abra o arquivo com gedit e substitua o comando depois de "Exec=" por: python3 /path_to_script2/.myownpassword.py (sem cotação)

Agora, após o próximo logout / login, se você iniciar o aplicativo, será solicitada sua senha, conforme definido no script2:

Como remover:

Para desfazer a configuração, basta remover o arquivo da área de trabalho local em /.local/share/applications e os dois scripts no diretório ~/ .

    
por Jacob Vlijm 08.04.2014 / 23:01
1

Que tipo de pessoas não autorizadas podem usar sua conta de usuário? Eu recomendaria criar várias contas de usuário para as pessoas com acesso ao computador. Você pode usar permissões de arquivo para restringir o acesso a certas partes do sistema, por exemplo, permitir que apenas membros do grupo "técnicos" executem o programa "skype".

Não é seguro permitir que pessoas que você não confie acessem sua conta de usuário pessoal.

    
por pille1842 08.04.2014 / 22:01