1

Предлагается ввести пароль для разблокировки набора ключей GNOME при входе в свою учетную запись. Мне было интересно, как заблокировать брелок в том же сеансе, который был разблокирован? (Я понимаю, что могу выйти, а затем войти снова для того же эффекта)

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

Кроме того, есть ли возможность просто заблокировать графический интерфейс для GNOME Keyring (Seahorse)?

2 ответа2

3

Вам нужно только вызвать gnome_keyring_lock_all_sync().

Вот простая программа, которая делает это:

Блокировка-keyring.c:

#include <stdio.h>
#include <gnome-keyring.h>

int main() {
    GnomeKeyringResult lock_result = gnome_keyring_lock_all_sync();
    if (lock_result == GNOME_KEYRING_RESULT_OK) {
        printf("Successfully locked\n");
        return 0;
    } else {
        printf("Error locking keyring: %d\n", lock_result);
        return 1;
    }
}

Компилировать с помощью cc lock-keyring.c -o lock-keyring -Wall $(pkg-config gnome-keyring-1 --cflags --libs)

0

Единственное, что вы можете сделать, если произойдет какое-то подозрительное действие, это убить gnome-keyring-daemon следующим образом:

kill -9 $(pgrep gnome-keyring-d)

Вы можете просто сделать простой скрипт, чтобы сделать это автоматически:

#!/bin/bash
case $1 in
    hibernate)
        pkill gnome-keyring-d
        ;;
    suspend)
        pkill gnome-keyring-d
        ;;
    thaw)
        ;;
    resume)
        /usr/bin/gnome-keyring-daemon --daemonize --login
        ;;
    *)  echo "Somebody is calling me totally wrong."
        ;;
esac

источник

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .