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 SCEPmanClient
circle-info

Befolgen Sie Microsofts Anleitung zur Installation von PowerShell auf Linuxarrow-up-right oder MacOSarrow-up-right.

Voraussetzungen

Damit das Modul wie erwartet funktioniert, müssen Sie eine kleine Änderung an Ihrer SCEPman-Bereitstellung vornehmen:

1

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.

2

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)

Beispielinformationen für einen benutzerdefinierten API-Bereich

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

Autorisierte Microsoft Azure PowerShell-Anwendung
3

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-Registrierungchevron-right

CSR 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

Self-Service-Registrierungchevron-right

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?