<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/ref.ssh2.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'zh',
  ),
  'this' => 
  array (
    0 => 'function.ssh2-publickey-add.php',
    1 => 'ssh2_publickey_add',
    2 => 'Add an authorized publickey',
  ),
  'up' => 
  array (
    0 => 'ref.ssh2.php',
    1 => 'SSH2 函数',
  ),
  'prev' => 
  array (
    0 => 'function.ssh2-poll.php',
    1 => 'ssh2_poll',
  ),
  'next' => 
  array (
    0 => 'function.ssh2-publickey-init.php',
    1 => 'ssh2_publickey_init',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'en',
    'path' => 'reference/ssh2/functions/ssh2-publickey-add.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="function.ssh2-publickey-add" class="refentry">
 <div class="refnamediv">
  <h1 class="refname">ssh2_publickey_add</h1>
  <p class="verinfo">(PECL ssh2 &gt;= 0.10)</p><p class="refpurpose"><span class="refname">ssh2_publickey_add</span> &mdash; <span class="dc-title">
   Add an authorized publickey
  </span></p>

 </div>

 <div class="refsect1 description" id="refsect1-function.ssh2-publickey-add-description">
  <h3 class="title">说明</h3>
  <div class="methodsynopsis dc-description">
   <span class="methodname"><strong>ssh2_publickey_add</strong></span>(<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam"><span class="type"><a href="language.types.resource.php" class="type resource">resource</a></span> <code class="parameter">$pkey</code></span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam"><span class="type"><a href="language.types.string.php" class="type string">string</a></span> <code class="parameter">$algoname</code></span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam"><span class="type"><a href="language.types.string.php" class="type string">string</a></span> <code class="parameter">$blob</code></span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam"><span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span> <code class="parameter">$overwrite</code><span class="initializer"> = <strong><code><a href="reserved.constants.php#constant.false">false</a></code></strong></span></span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam"><span class="type"><a href="language.types.array.php" class="type array">array</a></span> <code class="parameter">$attributes</code><span class="initializer"> = ?</span></span><br>): <span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span></div>


  <blockquote class="note"><p><strong class="note">注意</strong>: <span class="simpara">公钥子系统用于管理服务器到<em>已</em>被认证的客户端的公钥。要用公钥认证方法来认证远程系统，应使用
<span class="function"><a href="function.ssh2-auth-pubkey-file.php" class="function">ssh2_auth_pubkey_file()</a></span> 函数。</span></p></blockquote>

 </div>


 <div class="refsect1 parameters" id="refsect1-function.ssh2-publickey-add-parameters">
  <h3 class="title">参数</h3>
  <dl>
   
    <dt><code class="parameter">pkey</code></dt>
    <dd>
     <span class="simpara">
      Publickey Subsystem resource created by <span class="function"><a href="function.ssh2-publickey-init.php" class="function">ssh2_publickey_init()</a></span>.
     </span>
    </dd>
   
   
    <dt><code class="parameter">algoname</code></dt>
    <dd>
     <span class="simpara">
      Publickey algorithm (e.g.): ssh-dss, ssh-rsa
     </span>
    </dd>
   
   
    <dt><code class="parameter">blob</code></dt>
    <dd>
     <span class="simpara">
      Publickey blob as raw binary data
     </span>
    </dd>
   
   
    <dt><code class="parameter">overwrite</code></dt>
    <dd>
     <span class="simpara">
      If the specified key already exists, should it be overwritten?
     </span>
    </dd>
   
   
    <dt><code class="parameter">attributes</code></dt>
    <dd>
     <span class="simpara">
      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.
     </span>
    </dd>
   
  </dl>
 </div>


 <div class="refsect1 returnvalues" id="refsect1-function.ssh2-publickey-add-returnvalues">
  <h3 class="title">返回值</h3>
  <p class="simpara">
   成功时返回 <strong><code><a href="reserved.constants.php#constant.true">true</a></code></strong>， 或者在失败时返回 <strong><code><a href="reserved.constants.php#constant.false">false</a></code></strong>。
  </p>
 </div>


 <div class="refsect1 examples" id="refsect1-function.ssh2-publickey-add-examples">
  <h3 class="title">示例</h3>
  <div class="example" id="example-1">
   <p><strong>示例 #1 Adding a publickey with <span class="function"><strong>ssh2_publickey_add()</strong></span></strong></p>
   <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br />$ssh2 </span><span style="color: #007700">= </span><span style="color: #0000BB">ssh2_connect</span><span style="color: #007700">(</span><span style="color: #DD0000">'shell.example.com'</span><span style="color: #007700">, </span><span style="color: #0000BB">22</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">ssh2_auth_password</span><span style="color: #007700">(</span><span style="color: #0000BB">$ssh2</span><span style="color: #007700">, </span><span style="color: #DD0000">'jdoe'</span><span style="color: #007700">, </span><span style="color: #DD0000">'password'</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$pkey </span><span style="color: #007700">= </span><span style="color: #0000BB">ssh2_publickey_init</span><span style="color: #007700">(</span><span style="color: #0000BB">$ssh2</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">$keyblob </span><span style="color: #007700">= </span><span style="color: #0000BB">base64_decode</span><span style="color: #007700">(</span><span style="color: #DD0000">'<br />AAAAB3NzaC1yc2EAAAABIwAAAIEA5HVt6VqSGd5PTrLRdjNONxXH1tVFGn0<br />Bd26BF0aCP9qyJRlvdJ3j4WBeX4ZmrveGrjMgkseSYc4xZ26sDHwfL351xj<br />zaLpipu\BGRrw17mWVBhuCExo476ri5tQFzbTc54VEHYckxQ16CjSTibI5X<br />69GmnYC9PNqEYq/1TP+HF10='</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">ssh2_publickey_add</span><span style="color: #007700">(</span><span style="color: #0000BB">$pkey</span><span style="color: #007700">, </span><span style="color: #DD0000">'ssh-rsa'</span><span style="color: #007700">, </span><span style="color: #0000BB">$keyblob</span><span style="color: #007700">, </span><span style="color: #0000BB">false</span><span style="color: #007700">, array(</span><span style="color: #DD0000">'comment'</span><span style="color: #007700">=&gt;</span><span style="color: #DD0000">"John's Key"</span><span style="color: #007700">));<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
   </div>

  </div>
 </div>


 <div class="refsect1 seealso" id="refsect1-function.ssh2-publickey-add-seealso">
  <h3 class="title">参见</h3>
  <ul class="simplelist">
   <li><span class="function"><a href="function.ssh2-publickey-init.php" class="function" rel="rdfs-seeAlso">ssh2_publickey_init()</a> - Initialize Publickey subsystem</span></li>
   <li><span class="function"><a href="function.ssh2-publickey-remove.php" class="function" rel="rdfs-seeAlso">ssh2_publickey_remove()</a> - Remove an authorized publickey</span></li>
   <li><span class="function"><a href="function.ssh2-publickey-list.php" class="function" rel="rdfs-seeAlso">ssh2_publickey_list()</a> - List currently authorized publickeys</span></li>
  </ul>
 </div>


</div><?php manual_footer($setup); ?>