ssh2_auth_pubkey

(PECL ssh2 >= 1.4.0)

ssh2_auth_pubkeyAuthenticate using a public key in a variable

Description

ssh2_auth_pubkey(
    resource $session,
    string $username,
    string $pubkey,
    string $privkey,
    string $passphrase = ?
): bool

Authenticate using a public key in a variable.

Liste de paramètres

session
An SSH connection link identifier, obtained from a call to ssh2_connect().
username
Name of the user to authenticate as on the remote server.
pubkey
Public key in OpenSSH's format. It should look something like: ssh-rsa AAAAB3NzaC1yc2EAAA....NX6sqSnHA8= rsa-key-20121110
privkey
Private OpenSSH key. It should begin with: -----BEGIN RSA PRIVATE KEY-----
passphrase
If privkey is encrypted (which it should be), the passphrase must be provided.

Valeurs de retour

Cette fonction retourne true en cas de succès ou false si une erreur survient.

Exemples

Exemple #1 Authentication using a public key

<?php
$connection
= ssh2_connect('shell.example.com', 22, array('hostkey'=>'ssh-rsa'));
$publicKey = file_get_contents('/home/username/.ssh/id_rsa.pub');
$privateKey = file_get_contents('/home/username/.ssh/id_rsa');

if (
ssh2_auth_pubkey($connection, 'username',
$publicKey,
$privateKey, 'secret')) {
echo
"Public Key Authentication Successful\n";
} else {
die(
'Public Key Authentication Failed');
}
?>

Notes

Note: The underlying libssh library doesn'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't been completed yet. You would need to ignore this failure and continue on and call ssh2_auth_password() in order to complete authentication.

Voir aussi

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top