hinzugefügt wurden. Diese Operation kann mit dem
SCEPmanClient ist ein PowerShell-Modul, das dafür gedacht ist, mit SCEPmans REST-API zu interagieren. Da es plattformunabhängig und kompatibel mit Windows PowerShell v5 ist, können Sie dieses Modul verwenden, um Zertifikate für alle Anwendungsfälle anzufordern, für die die REST-API verwendet werden kann:
Automatische Ausstellung von Serverzertifikaten
Clientzertifikate für nicht verwaltete Geräte
Bereitstellung von Zertifikaten für Linux-Geräte
Installation
Das SCEPmanClient-Modul ist im PowerShell Gallery verfügbar und kann mit folgendem Befehl installiert werden:
Install-Module -Name SCEPmanClientVoraussetzungen
Damit das Modul wie erwartet funktioniert, müssen Sie eine kleine Änderung an Ihrer SCEPman-Bereitstellung vornehmen:
Startseiten-URL hinzufügen
Fügen Sie die App Service-URL von SCEPman hinzu: Navigieren Sie zu den Branding & Eigenschaften Abschnitt der App-Registrierung. Fügen Sie die App Service-URL von SCEPman in das Feld Startseiten-URL ein:

Dies ist erforderlich, damit das Modul die Client-ID der App-Registrierung automatisch nachschlagen kann, die für die Abrufung eines Zugriffstokens benötigt wird.
Azure PowerShell erlauben, mit der App-Registrierung zu interagieren
Navigieren Sie in der App-Registrierung zu Eine API freigeben und erstellen Sie einen benutzerdefinierten Bereich, der zur Autorisierung der Client-ID verwendet werden kann 1950a258-227b-4e31-a9cf-717495945fc2 (Microsoft Azure PowerShell)

Nachdem Sie einen API-Bereich erstellt haben, kann die Azure PowerShell-Anwendung autorisiert werden:

EST-Endpunkt aktivieren
Konfiguration
Erforderlich für die Zertifikatserneuerung
Konfigurieren Sie Ihren SCEPman App Service so, dass mTLS-Clientzertifikate akzeptiert werden. Überprüfen Sie im Konfigurationsbereich des Einstellungsabschnitts, dass der Modus für Clientzertifikate bei Eingehenden Clientzertifikaten auf Optional.

Setzen Sie den Modus für Clientzertifikate nicht auf Erfordern oder Zulassen, da dies den normalen Betrieb von SCEPman an den SCEP-Endpunkten beeinträchtigen würde!
Umgebungsvariablen
Um dieses Szenario nutzen zu können, müssen Sie die folgenden Umgebungsvariablen auf dem SCEPman-App-Service festlegen.
Erforderlich für die Zertifikatanmeldung und -erneuerung
Setzen Sie diese Variable auf true um die Validierung von Certificate Signing Requests (CSRs) zu aktivieren.
Erforderlich für die Zertifikatserneuerung
Setzen Sie diese Variable auf true um Zertifikaterneuerungen zu aktivieren.
Erforderlich für die Zertifikatserneuerung
Setzen Sie diese Variable auf eine durch Kommas getrennte Liste von Zertifikatstypen, für die Sie die Erneuerung zulassen möchten. Siehe die verlinkte Variablendokumentation für eine Liste möglicher Zertifikatstypen.
Nach Abschluss der Konfiguration stellen Sie sicher, die SCEP-Server-URL in Ihrem/ Ihren SCEP-Profil(en) in Intune zu aktualisieren. Die neue URL sollte die von Ihnen erstellte benutzerdefinierte Domain mit "/certsrv/mscep/mscep.dll" am Ende sein. Static,IntuneUser,IntuneDevice
Berechtigungen
SCEPman hat verschiedene Rollen, die das Anfordern unterschiedlicher Arten von Zertifikaten ermöglichen. Sie können diese in der SCEPman-api (Standardname) Unternehmensanwendung:
CSR DB Requesters
Diese Rolle ist standardmäßig nur Serviceprinzipalen (z. B. App-Registrierungen) zuweisbar und erlaubt das Anfordern von Zertifikaten mit beliebigen Betreffs und Verwendungszwecken.
API-RegistrierungCSR Self Service
Diese Rolle kann Benutzern zugewiesen werden und erlaubt das Ausstellen von Zertifikaten mit den folgenden Einschränkungen:
Nur ClientAuth EKU
Benutzerzertifikate müssen mit dem UPN des Benutzers entweder im Betreff oder im UPN-Subject-Alt-Name übereinstimmen
Gerätezertifikate müssen einen Betreff oder SAN haben, den SCEPman einem Geräteobjekt zuordnen kann, das dem authentifizierten Benutzer gehört
Beispielanwendungen
Azure-Authentifizierung verwenden
Interaktive Authentifizierung
Wenn beim Anfordern eines neuen Zertifikats kein Authentifizierungsmechanismus angegeben wird, wird der Benutzer standardmäßig interaktiv authentifiziert. Durch die Verwendung des -SubjectFromUserContext Parameters werden Betreff und UPN-SAN des Zertifikats automatisch anhand des Kontextes des angemeldeten Benutzers ausgefüllt:
Geräteanmeldung
Wenn Sie ein neues Zertifikat auf einem System ohne Desktop-Umgebung anfordern möchten, können Sie den -DeviceCode Parameter verwenden, um die eigentliche Authentifizierung in einer anderen Sitzung durchzuführen:
Service Principal-Authentifizierung
In vollständig automatisierten Szenarien kann eine App-Registrierung für die Authentifizierung verwendet werden. In diesem Fall ist es nicht möglich, den Betreff aus dem authentifizierten Kontext abzuleiten.
Parameter Splatting macht die Ausführung zudem lesbarer:
Authentifizieren mit Zertifikaten
Sobald ein Zertifikat in einem authentifizierten Kontext ausgestellt wurde, können wir es zur Erneuerung verwenden, ohne erneut Kontextinformationen bereitzustellen.
CertificateBySubject
Interaktion mit Schlüsselspeichern ist nur unter Windows möglich
Wenn Sie den CertificateBySubject Parameter angeben, versucht das Modul automatisch, ein geeignetes Zertifikat zur Erneuerung in den CurrentUser und LocalMachine Schlüsselspeichern zu finden.
Der eingegebene Wert wird mittels Regex mit den Betreffs aller verfügbaren Zertifikate abgeglichen.
Ein bestimmtes Zertifikat angeben
CertificateFromFile
Auf Linux-Systemen kann eine Zertifikatserneuerung durchgeführt werden, indem die Pfade zu einem bestehenden Zertifikat und dessen privatem Schlüssel übergeben werden.
Bei Verwendung eines verschlüsselten privaten Schlüssels werden Sie nach dem Passwort gefragt. Sie können das Passwort des Schlüssels auch direkt mittels des PlainTextPassword Parameters übergeben.
Verwendung von SCEPman mit einer Azure Web Application Firewall
Mit aktivierten SSL-Profilen terminiert die WAF die TLS-Verbindungen. Das unterbricht wiederum Zertifikatserneuerungen über EST, da das Verfahren mTLS zur Authentifizierung voraussetzt. In diesem Fall kann der UseSCEPRenewal Parameter verwendet werden, um stattdessen eine Zertifikatserneuerung gemäß dem SCEP-Protokoll durchzuführen.
Bitte beachten Sie, dass dies zusätzliche SCEPman-Konfiguration bezüglich des statischen SCEP-Endpunkts erfordert:
AppConfig:StaticValidation:Enabled : true
AppConfig:StaticValidation:AllowRenewals : true
AppConfig:StaticValidation:ReenrollmentAllowedCertificateTypes: Static (Abhängig von den für die Erneuerung vorgesehenen Typen)
Zuletzt aktualisiert
War das hilfreich?