ssh2_publickey_add
(PECL ssh2 >= 0.10)
ssh2_publickey_add — Добавляет авторизованный открытый ключ
Описание
$pkey
, string $algoname
, string $blob
, bool $overwrite
= false
, array $attributes
= ?
) : boolЗамечание: Подсистема открытых ключей используется для управления открытыми ключами на сервере, на котором клиент уже прошел авторизацию. Для авторизации с помощью открытого ключа на удаленной системе, используйте вместо этого функцию ssh2_auth_pubkey_file().
Список параметров
-
pkey
-
Ресурс подсистемы открытого ключа, созданный с помощью ssh2_publickey_init().
-
algoname
-
Алгоритм ключа: ssh-dss, ssh-rsa
-
blob
-
Бинарная строка, содержащая открытый ключ
-
overwrite
-
Нужно ли перезаписать ключ, если он уже есть?
-
attributes
-
Ассоциативный массив атрибутов, присваиваемых открытому ключу. Список поддерживаемых атрибутов ищите по словам "ietf-secsh-publickey-subsystem". Для указания какого-либо атрибута обязательным, поставьте перед именем звездочку. Если сервер не поддерживает какой-либо атрибут, помеченный обязательным - это прервет процесс добавления.
Возвращаемые значения
Возвращает true
в случае успешного завершения или false
в случае возникновения ошибки.
Примеры
Пример #1 Добавляем открытый ключ с помощью ssh2_publickey_add()
<?php
$ssh2 = ssh2_connect('shell.example.com', 22);
ssh2_auth_password($ssh2, 'jdoe', 'password');
$pkey = ssh2_publickey_init($ssh2);
$keyblob = base64_decode('
AAAAB3NzaC1yc2EAAAABIwAAAIEA5HVt6VqSGd5PTrLRdjNONxXH1tVFGn0
Bd26BF0aCP9qyJRlvdJ3j4WBeX4ZmrveGrjMgkseSYc4xZ26sDHwfL351xj
zaLpipu\BGRrw17mWVBhuCExo476ri5tQFzbTc54VEHYckxQ16CjSTibI5X
69GmnYC9PNqEYq/1TP+HF10=');
ssh2_publickey_add($pkey, 'ssh-rsa', $keyblob, false, array('comment'=>"John's Key"));
?>
Смотрите также
- ssh2_publickey_init() - Инициализирует подсистему открытого ключа
- ssh2_publickey_remove() - Удаляет авторизованный открытый ключ
- ssh2_publickey_list() - Список уже авторизованных открытых ключей