ssh2_auth_password

(PECL ssh2 >= 0.9.0)

ssh2_auth_passwordParola kullanarak kimlik doğrulaması yapar

Açıklama

ssh2_auth_password(resource $oturum, string $kullanıcı, string $parola): bool

Düz parola kullanarak SSH üzerinden kimlik doğrulaması yapar. 0.12 sürümünden beri ayrıca etkileşimli klavye yöntemide desteklenmektedir.

Bağımsız Değişkenler

oturum

ssh2_connect() ile sağlanan bir SSH bağlantı tanıtıcısı.

kullanıcı

Uzak konaktaki kullanıcı ismi.

parola

kullanıcı için parola.

Dönen Değerler

Başarı durumunda true, başarısızlık durumunda false döner.

Örnekler

Örnek 1 - Parolalı kimlik doğrulama

<?php
$baglanti
= ssh2_connect('shell.example.com', 22);

if (
ssh2_auth_password($baglanti, 'birey', 'parola')) {
echo
"Kimlik Doğrulaması Başarılı!\n";
} else {
die(
'Kimlik Doğrulaması Başarısız...');
}
?>

add a note add a note

User Contributed Notes 3 notes

up
2
sgchris at gmail dot com
9 years ago
Please note that the function ssh2_auth_password raises PHP warning(!) on bad authentication. To avoid the warning, use the "silence" ("@") operator.

<?php
$ssh
= ssh2_connect($host);
if (
false === $ssh) {
    die(
'connection failed');
}

$auth = @ssh2_auth_password($ssh, $user, $password);
if (
false === $auth) {
    die(
'authentication failed');
}
?>
up
-10
wally at soggysoftware dot co dot uk
17 years ago
This function is useful for authenticating website clients against local (or remote) Unix users.

I'd played around with Apache+PAM, various mod_auths and homebrewed shell programs and even NIS, but to authenticate a user against a Unix shadow file fundamentally requires root priviledges, so either your PHP script needs root or an external program needs it's sticky bit set.  Both of these have *serious* security implications.

Using SSH, the overhead is obviously going to be greater but you're trusting a root service that's been (and continues to be) really well tested.  Just try authing with SSH against localhost (or another host if you want).
up
-14
noels01 at gmx dot net
19 years ago
Do not try to authenticate or log in more than once on a ssh2 connection. It won't work. You'll need a new connection via ssh2_connect() which will result in a poor performance if you're doing several connects to the same server.
To Top