PHPerKaigi 2024

ssh2_publickey_list

(PECL ssh2 >= 0.10)

ssh2_publickey_list Список уже авторизованных открытых ключей

Описание

ssh2_publickey_list(resource $pkey): array

Список в настоящее время авторизованных открытых ключей.

Список параметров

pkey

Ресурс подсистемы открытого ключа

Возвращаемые значения

Возвращает индексированный массив ключей, каждый из которых представляет из себя ассоциативный массив, содержащий элементы с ключами: name, blob, attrs.

Элементы публичного ключа
Ключ массива Что означает
name Имя алгоритма, с помощью которого создавался ключ: ssh-dss или ssh-rsa.
blob Строка бинарных данных - сам ключ
attrs Атрибуты, присвоенные ключу. Наиболее часто используется (и единственный доступный подсистемой открытого ключа версии 1) - это comment, представляющий из себя строку свободного формата.

Примеры

Пример #1 Список авторизованных ключей с помощью ssh2_publickey_list()

<?php
$ssh2
= ssh2_connect('shell.example.com', 22);
ssh2_auth_password($ssh2, 'jdoe', 'secret');
$pkey = ssh2_publickey_init($ssh2);

$list = ssh2_publickey_list($pkey);

foreach(
$list as $key) {
echo
"Key: {$key['name']}\n";
echo
"Blob: " . chunk_split(base64_encode($key['blob']), 40, "\n") . "\n";
echo
"Comment: {$key['attrs']['comment']}\n\n";
}
?>

Результат выполнения приведённого примера:

Key: ssh-rsa
Blob: AAAAB3NzaC1yc2EAAAABIwAAAIEA5HVt6VqSGd5P
TrLRdjNONxXH1tVFGn0Bd26BF0aCP9qyJRlvdJ3j
4WBeX4ZmrveGrjMgkseSYc4xZ26sDHwfL351xjza
Lpipu\BGRrw17mWVBhuCExo476ri5tQFzbTc54VE
HYckxQ16CjSTibI5X69GmnYC9PNqEYq/1TP+HF10
Comment: John's Key

Key: ssh-rsa
Blob: AAAAB3NzaHVt6VqSGd5C1yc2EAAAABIwA232dnJA
AIEA5HVt6VqSGd5PTrLRdjNONxX/1TP+HF1HVt6V
qSGd50H1tVFGn0BB3NzaC1yc2EAd26BF0aCP9qyJ
RlvdJ3j4WBeX4ZmrveGrjMgkseSYc4xZ26HVt6Vq
SGd5sDHwfL351xjzaLpipu\BGB3NzaC1yc2EA/1T
Comment: Alice's Key

Примечания

Замечание: Через подсистему открытых ключей управляют открытыми ключами на сервере, на котором клиент уже прошёл аутентификацию. Вместо этого для аутентификации с открытым ключом на удалённой системе вызывают функцию ssh2_auth_pubkey_file().

Смотрите также

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top