Jest to polecenie pkexec, które można uruchomić w darmowym dostawcy usług hostingowych OnWorks przy użyciu jednej z wielu naszych bezpłatnych stacji roboczych online, takich jak Ubuntu Online, Fedora Online, emulator online systemu Windows lub emulator online MAC OS
PROGRAM:
IMIĘ
pkexec - Wykonaj polecenie jako inny użytkownik
STRESZCZENIE
pkexec [--wersja] [--wyłącz agenta wewnętrznego] [--help]
pkexec [--użytkownik nazwa użytkownika] PROGRAM [ARGUMENTY...]
OPIS
pkexec umożliwia uprawnionemu użytkownikowi wykonanie PROGRAM jako inny użytkownik. Jeśli nazwa użytkownika nie jest
określony, wówczas program zostanie uruchomiony jako administrator administratora, korzeń.
POWRÓT WARTOŚĆ
Po pomyślnym zakończeniu zwracana wartość jest wartością zwracaną przez PROGRAM, Jeśli
proces wywołujący nie jest autoryzowany lub nie można uzyskać autoryzacji
uwierzytelnienie lub wystąpił błąd, pkexec wychodzi z wartością zwracaną 127. Jeśli
nie można uzyskać autoryzacji, ponieważ użytkownik odrzucił okno uwierzytelniania,
pkexec wychodzi z wartością zwracaną 126.
POŚWIADCZENIE AGENT
pkexec, podobnie jak każda inna aplikacja PolicyKit, będzie korzystać z zarejestrowanego agenta uwierzytelniania
dla procesu wywołującego. Jeśli jednak żaden agent uwierzytelniania nie jest dostępny, to pkexec
zarejestruje własnego agenta uwierzytelniania tekstowego. To zachowanie można wyłączyć przez
zaliczając --wyłącz agenta wewnętrznego opcja.
BEZPIECZEŃSTWO UWAGI
Wykonywanie programu jako inny użytkownik jest operacją uprzywilejowaną. Domyślnie wymagane
autoryzacja (patrz rozdział „WYMAGANE UPOWAŻNIENIA”) wymaga administratora
uwierzytelnianie. Ponadto zostanie wyświetlone okno dialogowe uwierzytelniania przedstawione użytkownikowi
pełną ścieżkę do programu, który ma zostać wykonany, aby użytkownik wiedział, co się stanie:
[OBRAZ][1]
+---------------------------------------------------------------- ---------+
| Uwierzytelnij [X] |
+---------------------------------------------------------------- ---------+
| |
| [Ikona] Uwierzytelnianie jest wymagane do uruchomienia `/ bin / bash'|
| jako superużytkownik |
| |
| Aplikacja próbuje wykonać |
| czynność wymagająca uprawnień. Uwierzytelnianie |
| ponieważ superużytkownik jest wymagany do wykonania tego |
| działanie. |
| |
| Hasło dla roota: [_________________________] |
| |
| [V] Szczegóły: |
| Komenda: / bin / bash |
| Uruchom jako: superużytkownik (root) |
| Akcja: org.freedesktop.policykit.exec |
| Dostawca: Projekt PolicyKit |
| |
| [Anuluj] [Uwierzytelnij] |
+---------------------------------------------------------------- ---------+
Środowisko, które PROGRAM uruchomi go, zostanie ustawiony na minimalną znaną i bezpieczną
środowiska, aby uniknąć wstrzykiwania kodu przez LD_LIBRARY_PATH lub podobne
mechanizmy. Ponadto zmienna środowiskowa PKEXEC_UID jest ustawiona na identyfikator użytkownika
wywołanie procesu pkexec. W rezultacie, pkexec nie pozwoli ci uruchamiać aplikacji X11 jako
innego użytkownika, ponieważ zmienne środowiskowe $DISPLAY i $XAUTHORITY nie są ustawione. Te
dwie zmienne zostaną zachowane, jeśli org.freedesktop.policykit.exec.allow_gui adnotacja
dla akcji jest ustawiona wartość niepusta; jest to jednak odradzane i powinno być
używany w starszych programach.
WYMAGANE UPOWAŻNIENIA
Domyślnie org.freedesktop.policykit.exec wymagana jest autoryzacja, chyba że działanie
plik definicji jest obecny dla danego programu. Aby zażądać innego zezwolenia,
można to określić za pomocą org.freedesktop.policykit.exec.ścieżka adnotacja na temat akcji
(Szczegółowe informacje znajdują się w części „PRZYKŁAD”).
PRZYKŁAD
Aby określić, jakiego rodzaju autoryzacja jest potrzebna do wykonania programu
/usr/bin/pk-example-frobnicate jako inny użytkownik, po prostu napisz plik definicji akcji
tak
<!DOCTYPE konfiguracja zasad PUBLIC
"-//freedesktop//DTD PolicyKit Konfiguracja zasad 1.0//EN"
"http://www.freedesktop.org/standards/PolicyKit/1/policyconfig.dtd">
Przykłady dla projektu PolicyKit
http://hal.freedesktop.org/docs/PolicyKit/
Uruchom przykładowy program PolicyKit Frobnicate
Przykładowy przykład Kør PolicyKit Frobnicate
Uwierzytelnienie jest wymagane do uruchomienia przykładowego programu PolicyKit Frobnicate (user=$(user), program=$(program), command_line=$(command_line))
Autoryzacja jest dostępna dla przykładowego PolicyKit Frobnicate (user=$(user), program=$(program), command_line=$(command_line))
audio-x-ogólny
NIE
NIE
auth_self_keep
/usr/bin/pk-example-frobnicate
i wrzuć do / usr / share / polkit-1 / actions katalogu pod odpowiednią nazwą (np
pasujące do przestrzeni nazw akcji). Należy pamiętać, że oprócz określenia programu,
można określić komunikat uwierzytelniający, opis, ikonę i ustawienia domyślne. Zauważ to
wystąpienia ciągów znaków $(użytkownik), $(program) i $(wiersz_polecenia) w wiadomości będą
zastąpione odpowiednio przez użytkownika (w postaci „Prawdziwe imię (nazwa użytkownika)” lub po prostu „nazwa użytkownika”
jeśli nie ma prawdziwej nazwy dla nazwy użytkownika), plik binarny do wykonania (w pełni kwalifikowana ścieżka,
np. "/usr/bin/pk-example-frobnicate") i linii poleceń, np. "pk-example-frobnicate
foo bar”. Na przykład dla akcji zdefiniowanej powyżej następujące okno dialogowe uwierzytelniania
będzie pokazane:
[OBRAZ][2]
+---------------------------------------------------------------- ---------+
| Uwierzytelnij [X] |
+---------------------------------------------------------------- ---------+
| |
| [Ikona] Uwierzytelnianie jest wymagane do uruchomienia PolicyKit |
| przykładowy program Frobnicate |
| |
| Aplikacja próbuje wykonać |
| czynność wymagająca uprawnień. Uwierzytelnianie |
| jest wymagane do wykonania tej czynności. |
| |
| Hasło: [__________________________________] |
| |
| [V] Szczegóły: |
| Polecenie: /usr/bin/pk-example-frobnicate |
| Uruchom jako: superużytkownik (root) |
| Akcja: org.fd.pk.example.pkexec.run-frobnicate |
| Dostawca: przykłady dla projektu PolicyKit |
| |
| [Anuluj] [Uwierzytelnij] |
+---------------------------------------------------------------- ---------+
Jeśli użytkownik używa ustawień regionalnych da_DK, okno dialogowe wygląda następująco:
[OBRAZ][3]
+---------------------------------------------------------------- ---------+
| Autoryzacja [X] |
+---------------------------------------------------------------- ---------+
| |
| [Ikona] Autorisering er påkrævet for at afvikle |
| Przykład PolicyKit Frobnicate |
| |
| Et program forsøger at udføre en obsługi der |
| kræver Privileier. Autorisering er påkrævet. |
| |
| Kod: [___________________________________] |
| |
| [V] Szczegóły: |
| Bruger: Superużytkownik (root) |
| Program: /usr/bin/pk-example-frobnicate |
| Obsługa: org.fd.pk.example.pkexec.run-frobnicate |
| Dostawca: przykłady dla projektu PolicyKit |
| |
| [Annullér] [Autorisering] |
+---------------------------------------------------------------- ---------+
Należy pamiętać, że pkexec nie sprawdza poprawności ARGUMENTY przekazany do PROGRAM. W normalnym przypadku
(gdzie uwierzytelnianie administratora jest wymagane za każdym razem pkexec jest używany), to nie jest a
problem, ponieważ jeśli użytkownik jest administratorem, równie dobrze może po prostu uruchomić pkexec bash dostać
korzeń.
Jeśli jednak używana jest akcja, dla której użytkownik może zachować autoryzację (lub jeśli użytkownik
jest domyślnie autoryzowany), tak jak w przypadku pk-example-frobnicate powyżej, może to być a
dziura bezpieczeństwa. Dlatego z reguły programy, dla których wymagane są ustawienia domyślne
autoryzacja została zmieniona, nigdy nie powinna w sposób dorozumiany ufać danym wprowadzonym przez użytkownika (np
dobrze napisane suid program).
Korzystaj z pkexec online, korzystając z usług onworks.net