公開鍵を使用した認証を行う

# ssh2_auth_pubkey_file

(PECL ssh2 >= 0.9.0)

ssh2_auth_pubkey_file — 公開鍵を使用した認証を行う

### 説明

ssh2_auth_pubkey_file ( resource `$session` , string `$username` , string `$pubkeyfile` , string `$privkeyfile` [, string `$passphrase` ] ) : bool

ファイルから読み込んだ公開鍵を使用した認証を行います。

### パラメータ

`session`

  ssh2_connect() のコールによって取得した SSH 接続リンク ID。

`username`

`pubkeyfile`

  公開鍵ファイル。OpenSSH 形式で表す必要があり、たとえば次のようになります。

  ssh-rsa AAAAB3NzaC1yc2EAAA....NX6sqSnHA8= rsa-key-20121110

`privkeyfile`

`passphrase`

  もし、`privkeyfile` が暗号化されている (そうあるべきです) 場合、パスフレーズも引数に渡す必要があります。

### 返り値

成功した場合に `TRUE` を、失敗した場合に `FALSE` を返します。

### 例

例1 公開鍵を用いた認証

`<?php
$connection = ssh2_connect('shell.example.com', 22, array('hostkey'=>'ssh-rsa'));
if (ssh2_auth_pubkey_file($connection, 'username',
'/home/username/.ssh/id_rsa.pub',
'/home/username/.ssh/id_rsa', 'secret')) {
echo "Public Key Authentication Successful\n";
} else {
die('Public Key Authentication Failed');
}
?>`

### 注意

> 注意:

> この関数が使っている libssh ライブラリは、部分的な認証のサポートがうまくできません。 公開鍵とパスワードの両方が必要な場合に、まるで関数が失敗したかのように見えてしまいます。 この場合の関数呼び出しの失敗は、単に認証がまだ完了していないということを表しているにすぎません。 この呼び出し失敗は無視し、続けて ssh2_auth_password() を呼ばなければ認証は完了しません。