...
Eigenschaft | Typ | Funktion |
Uri | String | Diese Eigenschaft enthält die URI des gewünschten Endpoints. Schema und Host werden zwingend benötigt, die Angabe eines Ports ist optional. Ist kein Port angegeben, so werden die jeweiligen Standard-Ports (80 bei HTTP und 443 bei HTTPS) verwendet. Wird als Host keine IP-Adresse angegeben, so wird der angegebene Name mittels DNS Lookup in eine IP-Adresse umgewandelt. Die IP-Adressen 0.0.0.0 oder * stehen für alle verfügbaren IP-Adressen des Servers. |
Certificate | JSON Objekt | Diese Eigenschaft wird nur bei der Verwendung von HTTPS benötigt. Das hier angegebene JSON Objekt benötigt folgende Eigenschaften: Source File UserStore SystemStore Store Path Name Password FriendlyName (oder DisplayName) SerialNumber (oder Serial oder SerialNo) SubjectName (oder Subject) Thumbprint Die Selektionskriterien werden nur dann ausgewertet, wenn das Zertifikat aus einem Zertifikatspeicher gelesen werden soll. Es müssen nicht alle möglichen Selektionskriterien spezifiziert werden, die Zertifikatsuche muss jedoch zu einem eindeutigen Ergebnis führen. Erfüllen mehrere Zertifikate die Selektionskriterien, kann der Webserver nicht gestartet werden. Ungültige Zertifikate werden bei der Suche generell nicht berücksichtigt. Die Verwendung mehrerer Zertifikate am selben Endpoint wird derzeit nicht unterstützt. Ist ein Endpoint über verschiedene Hostnamen erreichbar, so müssen diese in einem Zertifikat aufgelistet sein. Wildcard-Zertifikate werden ohne Einschränkungen unterstützt. |
Beispiel
Code Block | ||
---|---|---|
| ||
...
"Endpoints": [
{
"Uri": "http://*:80"
},
{
"Uri": "https://*:443",
"Certificate": {
"Source": "File",
"Path": "C:\Certificates",
"Name": "Certificate.pfx",
"Password": "CertificatePassword"
}
},
{
"Uri": "https://192.168.100.100:444",
"Certificate": {
"Source": "Store",
"SerialNumber": "0123456789"
}
}
],
... |
Zertifikate
Überall dort, wo Zertifikate spezifiziert werden können, wird als Zertifikat ein JSON-Objekt erwartet. Dieses Objekt unterstützt folgende Eigenschaften:
...
Eigenschaft
...
Typ
...
Funktion
...
Source
...
String
...
Gibt den Speicherort des Zertifikats an. Hierbei werden folgende Werte unterstützt:
File
Das Zertifikat liegt als Datei vor.
UserStore
Das Zertifikat liegt im benutzerspezifischen Zertifikatspeicher.
SystemStore
Das Zertifikat liegt im systemspezifischen Zertifikatspeicher.
Store
Das Zertifikat liegt in einem Zertifikatspeicher und Connect versucht diesen anhand der weiteren Daten zu ermitteln. Hierbei wird zuerst der benutzerspezifischen Zertifikatspeicher durchsucht. Führt diese Suche zu keinem Ergebnis, so wird die Suche im systemspezifischen Zertifikatspeicher fortgesetzt.
...
Path
...
String
...
Nur für Source “File”: Der Pfad zur Zertifikatdatei oder der Pfad zu dem Verzeichnis, welches die Zertifikatdatei enthält.
...
Name
...
String
...
Nur für Source “File”: Enthält die Eigenschaft “Path” das Verzeichnis, welches die Zertifikatdatei enthält, so muss hier der Dateiname der Zertifikatdatei angegeben werden. Andernfalls kann diese Eigenschaft weggelassen werden.
...
Password
...
String
...
Nur für Source “File”: Das Passwort für den in der Zertifikatdatei enthaltenen privaten Schlüssel.
...
FriedlyName oder DisplayName
...
String
...
Selektionskriterium für den Zertifikatspeicher: Der Anzeigename (Friendly Name) des zu verwendenden Zertifikats.
...
SerialNumber oder SerialNo oder Serial
...
String
...
Selektionskriterium für den Zertifikatspeicher: Die Seriennummer des zu verwendenden Zertifikats.
...
IssuerName oder Issuer
...
String
...
Selektionskriterium für den Zertifikatspeicher: Der Aussteller des zu verwendenden Zertifikats.
...
IssuerDistinguishedName
...
String
...
Selektionskriterium für den Zertifikatspeicher: Der Aussteller als Distinguished Name (CN=…)
...
SubjectName oder Subject
...
String
...
Selektionskriterium für den Zertifikatspeicher: Der Betreff (Subject) des zu verwendenden Zertifikats.
...
SubjectDistinguishedName
...
String
...
Selektionskriterium für den Zertifikatspeicher: Der Betreff (Subject) als Distinguished Name (CN=…)
...
Thumbprint
...
String
...
Selektionskriterium für den Zertifikatspeicher: Der Fingerabdruck (Thumbprint) des zu verwendenden Zertifikats.
...
Verwendung von Zertifikaten
Überall dort, wo Zertifikate spezifiziert werden können, wird als Zertifikat ein JSON-Objekt erwartet. Dieses Objekt unterstützt folgende Eigenschaften:
Eigenschaft | Typ | Funktion |
Source | String | Gibt den Speicherort des Zertifikats an. Hierbei werden folgende Werte unterstützt: File UserStore SystemStore Store |
Path | String | Nur für Source “File”: Der Pfad zur Zertifikatdatei oder der Pfad zu dem Verzeichnis, welches die Zertifikatdatei enthält. |
Name | String | Nur für Source “File”: Enthält die Eigenschaft “Path” das Verzeichnis, welches die Zertifikatdatei enthält, so muss hier der Dateiname der Zertifikatdatei angegeben werden. Andernfalls kann diese Eigenschaft weggelassen werden. |
Password | String | Nur für Source “File”: Das Passwort für den in der Zertifikatdatei enthaltenen privaten Schlüssel. |
FriedlyName oder DisplayName | String | Selektionskriterium für den Zertifikatspeicher: Der Anzeigename (Friendly Name) des zu verwendenden Zertifikats. |
SerialNumber oder SerialNo oder Serial | String | Selektionskriterium für den Zertifikatspeicher: Die Seriennummer des zu verwendenden Zertifikats. |
IssuerName oder Issuer | String | Selektionskriterium für den Zertifikatspeicher: Der Aussteller des zu verwendenden Zertifikats. |
IssuerDistinguishedName | String | Selektionskriterium für den Zertifikatspeicher: Der Aussteller als Distinguished Name (CN=…) |
SubjectName oder Subject | String | Selektionskriterium für den Zertifikatspeicher: Der Betreff (Subject) des zu verwendenden Zertifikats. |
SubjectDistinguishedName | String | Selektionskriterium für den Zertifikatspeicher: Der Betreff (Subject) als Distinguished Name (CN=…) |
Thumbprint | String | Selektionskriterium für den Zertifikatspeicher: Der Fingerabdruck (Thumbprint) des zu verwendenden Zertifikats. |
Die Selektionskriterien werden nur dann ausgewertet, wenn das Zertifikat aus einem Zertifikatspeicher gelesen werden soll. Es müssen nicht alle möglichen Selektionskriterien spezifiziert werden, die Zertifikatsuche muss jedoch zu einem eindeutigen Ergebnis führen. Erfüllen mehrere Zertifikate alle angegebenen Selektionskriterien und ist nur eines davon gültig, so wird das gültige Zertifikat verwendet. Erfüllen mehrere gültige Zertifikate alle angegebenen Selektionskriterien, kann der Webserver nicht gestartet werden.
Beispiel
Code Block | ||
---|---|---|
| ||
... "Endpoints": [ { "Uri": "http://*:80" }, { "Uri": "https://*:443", "Certificate": { "Source": "File", "Path": "C:\Certificates", "Name": "Certificate.pfx", "Password": "CertificatePassword" } }, { "Uri": "https://192.168.100.100:444", "Certificate": { "Source": "Store", "SerialNumber": "0123456789" } } ], ... |
Der Abschnitt “Frontend” (JSON Objekt)
...