(PHP 5 >= 5.2.0, PHP 7, PHP 8)
openssl_csr_get_subject — Liefert das Subjekt eines CSR
$csr
, bool $short_names
= true
): array|false
openssl_csr_get_subject() gibt Informationen zum
Distinguished Name des Subjekts zurück, die im csr
kodiert sind, was Felder wie commonName (CN), organizationName (O),
countryName (C) usw. einschließt.
csr
Eine Liste der gültigen Werte ist unter CSR-Parameter zu finden.
short_names
short_names
steuert, wie die Daten im Array
indexiert sind. Wenn short_names
true
ist
(Standardwert), dann werden die Felder mit ihrer kurzen Namensform
indexiert; andernfalls wird die lange Namensform verwendet - z. B. ist
CN die kurze Namensform von commonName.
Gibt ein assoziatives Array mit der Beschreibung des Subjekts zurück.
Bei einem Fehler wird false
zurückgegeben.
Version | Beschreibung |
---|---|
8.0.0 |
csr akzeptiert nun eine
OpenSSLCertificateSigningRequest-Instanz; vorher
wurde eine Ressource vom Typ OpenSSL X.509 CSR
akzeptiert.
|
Beispiel #1 openssl_csr_get_subject()-Beispiel
<?php
$subject = array(
"countryName" => "CA",
"stateOrProvinceName" => "Alberta",
"localityName" => "Calgary",
"organizationName" => "XYZ Widgets Inc",
"organizationalUnitName" => "PHP Documentation Team",
"commonName" => "Wez Furlong",
"emailAddress" => "wez@example.com",
);
$private_key = openssl_pkey_new(array(
"private_key_bits" => 2048,
"private_key_type" => OPENSSL_KEYTYPE_RSA,
));
$configargs = array(
'digest_alg' => 'sha512WithRSAEncryption'
);
$csr = openssl_csr_new($subject, $privkey, $configargs);
print_r(openssl_csr_get_subject($csr));
?>
Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:
Array ( [C] => CA [ST] => Alberta [L] => Calgary [O] => XYZ Widgets Inc [OU] => PHP Documentation Team [CN] => Wez Furlong [emailAddress] => wez@example.com )