Настольные Веб-приложения Ubuntu - Не могущий вставить

Контекст

Я использую менеджер паролей со случайным образом сгенерированными паролями для всех логинов. Эти пароли невероятно долги и имеют большое разнообразие символов/символов/чисел для увеличенной силы. Это делает их невероятно трудными/утомительными ввести, и я всегда вставляю их.

Вопрос

Настольные приложения Ubuntu, такие как Google Календарь, показанный ниже, не позволят мне вставить пароли. Там какой-либо путь состоит в том, чтобы включить вставку текста в этих приложениях?

enter image description here

Тем временем я всегда только что использовал браузер вместо этого.

1
задан 16 January 2015 в 06:19

1 ответ

Неспособность вставить пароль, вероятно, предназначена как меры по обеспечению безопасности. Я могу предположить однако, что это контрпродуктивно, если Вы хотите использовать более сложные пароли.

Одурачивание системы

, НО, с опцией ниже, мы можем одурачить систему немного и заставить его полагать, что Вы ввели пароль сами, но Вы на самом деле вставили его в промежуточном окне.

, Как это работает на практике:

  • Первый Вы нажимаете в поле записи (ввод пароля) окна настольного приложения.
  • Тогда Вы нажимаете сочетание клавиш по Вашему выбору (набор в Параметрах настройки системы, посмотрите далее ниже) для вызова маленького окна, в котором можно вставить сложный пароль:

    enter image description here

  • Нажимают "OK", Ваш пароль будет "введен" в поле записи настольного приложения.

, Как использовать

  • использование сценария xdotool

    sudo apt-get install xdotool
    
  • Вставка сценарий ниже в пустой файл, сохраните его, поскольку paste_password.py

  • Добавляют его к сочетанию клавиш по Вашему выбору: Выберите: Параметры настройки системы> "Клавиатура"> "Ярлыки"> "Пользовательские Ярлыки". Нажмите "+" и добавьте команду:

    python3 /path/to/paste_password.py
    

сценарий

#!/usr/bin/env python3
import subprocess
import time

try:
    command = 'zenity --entry --text "Password" --title "Password paste"'.strip()
    passwd = subprocess.check_output(["/bin/bash", "-c", command]).decode("utf-8").strip()
except subprocess.CalledProcessError:
    pass
else:
    time.sleep(0.5)
    subprocess.Popen(["/bin/bash", "-c", "xdotool type '"+passwd+"'"])
1
ответ дан 11 November 2019 в 02:27

Другие вопросы по тегам:

Похожие вопросы: