openssl_csr_get_subject
(PHP 5 >= 5.2.0, PHP 7, PHP 8)
openssl_csr_get_subject — Liefert das Subjekt eines CSR
Beschreibung
$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.
Parameter-Liste
-
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. Wennshort_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.
Rückgabewerte
Gibt ein assoziatives Array mit der Beschreibung des Subjekts zurück.
Bei einem Fehler wird false
zurückgegeben.
Changelog
Version | Beschreibung |
---|---|
8.0.0 |
csr akzeptiert nun eine
OpenSSLCertificateSigningRequest-Instanz; vorher
wurde eine Ressource vom Typ OpenSSL X.509 CSR
akzeptiert.
|
Beispiele
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 )
Siehe auch
- openssl_csr_new() - Erzeugt einen CSR
- openssl_csr_get_public_key() - Liefert den öffentlichen Schlüssel eines CSR
- openssl_x509_parse() - Parst ein X.509-Zertifikat und liefert die Informationen als Array