Forum und email

ssh2_publickey_add

(PECL ssh2:0.10)

ssh2_publickey_add — Add an authorized publickey

說明

bool ssh2_publickey_add ( resource $pkey , string $algoname , string $blob [, bool $overwrite [, array $attributes ]] )

Note: 公鑰系統用於管理伺服器上的客戶已經被認證的公鑰。要用公鑰認證方法在遠端系統上認證,應該用 ssh2_auth_pubkey_file() 函式。

參數

pkey

Publickey Subsystem resource created by ssh2_publickey_init().

algoname

Publickey algorithm (e.g.): ssh-dss, ssh-rsa

blob

Publickey blob as raw binary data

overwrite

If the specified key already exists, should it be overwritten?

attributes

Associative array of attributes to assign to this public key. Refer to ietf-secsh-publickey-subsystem for a list of supported attributes. To mark an attribute as mandatory, precede its name with an asterisk. If the server is unable to support an attribute marked mandatory, it will abort the add process.

Return值

如果成功則回傳 TRUE,失敗則回傳 FALSE

範例

Example#1 Adding a publickey with 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($ssh2'ssh-rsa'$keyblobfalse, array('comment'=>"John's Key"));
?>