Добавляет авторизованный открытый ключ

# ssh2_publickey_add

(PECL ssh2 >= 0.10)

ssh2_publickey_add — Добавляет авторизованный открытый ключ

### Описание

function ssh2_publickey_add(
resource `$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() - Список уже авторизованных открытых ключей

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open