uTools-Manuals/docs/php/ssh2_auth_pubkey_file.html
2019-04-08 23:22:26 +08:00

147 lines
6.1 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title>Authenticate using a public key</title>
</head>
<body class="docs"><div id="layout">
<div id="layout-content"><div id="function.ssh2-auth-pubkey-file" class="refentry">
<div class="refnamediv">
<h1 class="refname">ssh2_auth_pubkey_file</h1>
<p class="verinfo">(PECL ssh2 &gt;= 0.9.0)</p><p class="refpurpose"><span class="refname">ssh2_auth_pubkey_file</span> &mdash; <span class="dc-title">Authenticate using a public key</span></p>
</div>
<div class="refsect1 description" id="refsect1-function.ssh2-auth-pubkey-file-description">
<h3 class="title">说明</h3>
<div class="methodsynopsis dc-description">
<span class="methodname"><strong>ssh2_auth_pubkey_file</strong></span>
( <span class="methodparam"><span class="type">resource</span> <code class="parameter">$session</code></span>
, <span class="methodparam"><span class="type">string</span> <code class="parameter">$username</code></span>
, <span class="methodparam"><span class="type">string</span> <code class="parameter">$pubkeyfile</code></span>
, <span class="methodparam"><span class="type">string</span> <code class="parameter">$privkeyfile</code></span>
[, <span class="methodparam"><span class="type">string</span> <code class="parameter">$passphrase</code></span>
] ) : <span class="type">bool</span></div>
<p class="para rdfs-comment">
Authenticate using a public key read from a file.
</p>
</div>
<div class="refsect1 parameters" id="refsect1-function.ssh2-auth-pubkey-file-parameters">
<h3 class="title">参数</h3>
<p class="para">
<dl>
<dt>
<code class="parameter">session</code></dt>
<dd>
<p class="para">
An SSH connection link identifier, obtained from a call to
<span class="function"><a href="ssh2_connect.html" class="function">ssh2_connect()</a></span>.
</p>
</dd>
<dt>
<code class="parameter">username</code></dt>
<dd>
<p class="para">
</p>
</dd>
<dt>
<code class="parameter">pubkeyfile</code></dt>
<dd>
<p class="para">
The public key file needs to be in OpenSSH&#039;s format. It should look something like:
</p>
<p class="para">
ssh-rsa AAAAB3NzaC1yc2EAAA....NX6sqSnHA8= rsa-key-20121110
</p>
</dd>
<dt>
<code class="parameter">privkeyfile</code></dt>
<dd>
<p class="para">
</p>
</dd>
<dt>
<code class="parameter">passphrase</code></dt>
<dd>
<p class="para">
If <code class="parameter">privkeyfile</code> is encrypted (which it should
be), the <code class="parameter">passphrase</code> must be provided.
</p>
</dd>
</dl>
</p>
</div>
<div class="refsect1 returnvalues" id="refsect1-function.ssh2-auth-pubkey-file-returnvalues">
<h3 class="title">返回值</h3>
<p class="para">
成功时返回 <strong><code>TRUE</code></strong> 或者在失败时返回 <strong><code>FALSE</code></strong>
</p>
</div>
<div class="refsect1 examples" id="refsect1-function.ssh2-auth-pubkey-file-examples">
<h3 class="title">范例</h3>
<p class="para">
<div class="example" id="example-5614">
<p><strong>Example #1 Authentication using a public key</strong></p>
<div class="example-contents">
<div class="phpcode"><pre><span style="color: #000000">
<span style="color: #0000BB">&lt;?php<br />$connection&nbsp;</span><span style="color: #007700">=&nbsp;</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">,&nbsp;</span><span style="color: #0000BB">22</span><span style="color: #007700">,&nbsp;array(</span><span style="color: #DD0000">'hostkey'</span><span style="color: #007700">=&gt;</span><span style="color: #DD0000">'ssh-rsa'</span><span style="color: #007700">));<br /><br />if&nbsp;(</span><span style="color: #0000BB">ssh2_auth_pubkey_file</span><span style="color: #007700">(</span><span style="color: #0000BB">$connection</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">'username'</span><span style="color: #007700">,<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'/home/username/.ssh/id_rsa.pub'</span><span style="color: #007700">,<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #DD0000">'/home/username/.ssh/id_rsa'</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">'secret'</span><span style="color: #007700">))&nbsp;{<br />&nbsp;&nbsp;echo&nbsp;</span><span style="color: #DD0000">"Public&nbsp;Key&nbsp;Authentication&nbsp;Successful\n"</span><span style="color: #007700">;<br />}&nbsp;else&nbsp;{<br />&nbsp;&nbsp;die(</span><span style="color: #DD0000">'Public&nbsp;Key&nbsp;Authentication&nbsp;Failed'</span><span style="color: #007700">);<br />}<br /></span><span style="color: #0000BB">?&gt;</span>
</span>
</pre></div>
</div>
</div>
</p>
</div>
<div class="refsect1 notes" id="refsect1-function.ssh2-auth-pubkey-file-notes">
<h3 class="title">注释</h3>
<blockquote class="note"><p><strong class="note">Note</strong>:
<p class="para">
The underlying libssh library doesn&#039;t support partial auths very cleanly
That is, if you need to supply both a public key and a password it will
appear as if this function has failed. In this particular case a failure
from this call may just mean that auth hasn&#039;t been completed yet. You
would need to ignore this failure and continue on and call
<span class="function"><a href="ssh2_auth_password.html" class="function">ssh2_auth_password()</a></span> in order to complete
authentication.
</p>
</p></blockquote>
</div>
</div></div></div></body></html>