Jump to content

IIS Client Certificate Mapping, Hilfestellung


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hallo alle zusammen,

 

ich habe Probleme bei der Konfiguration des o.g. Vorhaben. Ich hoffe einer von euch kann mir da weiterhelfen. Ich habe bereits schon sehr viel gegoogelt, leider bekomme ich nicht die richtige Antwort bzw. sind mehrere Meinungen vertreten.

Mein Ziel ist es, dass ich statt Benutzer und Passwort eingeben muss, ein Zertifikat für jeden Client installiere und die sich quasi damit authentifizieren.

 

Folgende Konfiguration liegt vor:

 

- Windows Server 2012 r2 Standard mit IIS 8.5

- Wildcard Zertifikat von Comodo für meine Domain

 

Meine Schritte die ich durchgeführt habe:

 

1) Subdomain mit webinhalt für Testzwecken

2) IIS Client Certificate Mapping Authentication Rolle auf dem Server installiert

3) MMC Konsole --> Konsolenstamm --> Snap-in hinzufügen oder entfernen --> Zertifikate (Computerkonto -> Lokalen Computer )

4) Eigene Zertifikate --> Zertifikate --> mein Wildcard Zertifikat als Base 64 exportiert ohne privaten Schlüssel

5) SSL-Einstellung bei der Subdomain auf "SSL erforderlich" und "Client Zertifikat" ebenfalls auf "erforderlich"

6) IIS Manager --> Subdomain --> Konfigurationseditior: bei Abschnitt: system.webServer/security/authentication/iisClientCertificateMappingAuthentication

enable: true, one to one mappings: dort einen User hinzugefügt mit den Zertifikat den ich oben im Punkt 4 exportiert habe. Hier habe ich das end und begin certificate ausgeschnitten und das Zertifikat ohne Zeilenumbrüche formartiert

 

Das sind die Schritte die ich durchgeführt habe, bekomme aber den Zugriff per Explorer nicht hin.

 

Nur lese ich dauern etwas von Client-Zertifikat, woher bekomme ich es? Muss ich es erstellen? Und zwar mit welchen Werten oder was muss ich da genau machen? Dieses Client Zertiikat muss ja auf den Client-Rechner installiert werden, damit der Zugriff funktioniert.

 

Ich hoffe es kann mir jemand bei mein Vorhaben weiterhelfen und bedanke mich  vorab.

 

Grüße

 

 

christiano

 

 

Link zu diesem Kommentar

Keiner eien Idee?? :(

 

Könnt Ihr mir vielleicht sagen ob es sich beim schritt 1 (Step 1: Getting the Certificate Blob)

das wild cart Zertifikat in meinen Fall gemeint ist? Oder wo soll ich es holen??

 

Das irriertiert mich ein bisschen. Ich habe das Gefühl das ich ein Denkfehler habe.

 

Hier der Link: http://blogs.iis.net/rlucero/iis-7-walkthrough-one-to-one-client-certificate-mapping-configuration

 

Ich finde auch nirgends das module clientzertifikat in meinen IIS.

bearbeitet von christiano1203
Link zu diesem Kommentar

Hi,

 

die Client Zertifikate bekommst du ebenfalls von (d)einer CA. Da du hier ja scheinbar in einer Testumgebung unterwegs bist, wäre es am einfachsten du erstellst dir die benötigten Zertifikate selber oder nutzt eine eigene Zertifizierungsstelle.

Zum Testen ist es vielleicht auch einfacher erst einmal mit einem Many to One Mapping zu starten bis es läuft. Danach kannst du dich dann um One to One Mapping kümmern.

 

Generell sollte diese Anleitung funktionieren: http://www.jayway.com/2014/10/27/configure-iis-to-use-your-self-signed-certificates-with-your-application/

 

Gruß

Jan

Link zu diesem Kommentar

Du reichst deine Zertifikatsanforderung (CSR) bei einer Zertifizierungsstelle deiner wahl ein und bekommst dann das entsprechende User- oder Client-Zertifikat zurück?

In dem von mir verlinkten Artikel findest du gleich im ersten Satz ebenfalls noch einen Link zu einem Beitrag in dem beschrieben wird, wie du dir zum testen selber Zertifikate erstellen kannst..

Link zu diesem Kommentar

Hi, dass weiss ich ja wie ich ein Zertifikatsanforderung erstelle. Es ist ja ein Wildcard vorhanden.

 

Was ich nur nich verstehe ist, es wird von Clientzertifikat gesprochen. Ich verstehe das ja so, dass ich das Wildcard-Zertifikat als Cert ohne Privatkey exportieren soll.

 

Bei der Einrichtung von OneToOne Mapping im IIS, kann ich ja dann Benutzer, Passwort, das Zertifikat angeben. Soweitsogut, aber bekomme ich nicht dann beim Anlegen des Users ein bestimmtes CERT für den Benutzer den ich angelegt habe? Diese sollte ich dann auf dem Client Rechner installieren und in meinen Browser der Wahl importieren. So verstehe ich das.

 

Nur stellt sich mir die Frage wie generiere oder was muss ich machen, dass ich für jeden Benutzer ein eigenes Zertifikat bekomme, dieses sogenannte Client Zertifikat für den Benutzer.

Link zu diesem Kommentar

Du solltest dich mal über die Grundlagen informieren. Das ganze soll die Sicherheit erhöhen und nicht, durch Fehlkonfiguration, herunter setzen.

 

Es gibt bei Zertifikaten unterschiedliche Typen.

Es gibt Serverzertifikate. Dabei weist sich der Server aus, dass er der ist, der er vorgibt zu sein (dein Wildcardzertifikat).

Dann gibt es Client Zertifikate. Dabei weist sich der Client (Rechner oder User) aus, das er derjenige ist (durch den Besitz des Zertifikats).

 

Du musst deinen Clients Zertifikate ausstellen. Dies geht mit einer Windows PKI Automatisch (wenn so konfiguriert) mit anderen PKIs geht das evtl. manuell oder es gibt andere Mechanismen.

 

Am einfachsten ist es, wenn es hoffentlich keine produktive Implementierung sondern ein Test / POC ist, wenn du dir eine Windows PKI aufsetzt (hier reicht eine Einstufige) und das ganze damit testet.

Ich würde auch keine Wildcard Zertifikate einsetzen (brauchst du auch gar nicht) sondern höchstens SAN Zertifikate, wenn der Webserver mit mehreren Namen erreichbar sein soll.

Link zu diesem Kommentar

Z.B.: Mit dieser Anleitung im Abschnitt "Client Certificates"

Später wenn du es produktiv nutzen willst bekommst du die Zertifikate von (d)einer Zertifizierungsstelle..

 

Mit dem Wildcard könntest du höchstens ein Many to One Mapping machen, da du nur das _eine_ Wildcard Zertifikat hast. Wobei das Sicherheitstechnisch keinen Sinn machen würde (Es sei denn du könntest / würdest das Wildcard für jeden Client / User neu rekeyen).

Link zu diesem Kommentar

Danke für eure hilfreichen Tipps. Ich habe mir jetzt mal ein normales Zertifikate nach eurer Meinung geholt und eingebunden für eine Domain von mir. Zertifikatsanforderung habe ich über den IIS gemacht und abgeschlossen. Das Zertifikat selbst kommt von Comodo. Jetzt komme ich wieder zum Punkt Clientzertifikate.

 

"Später wenn du es produktiv nutzen willst bekommst du die Zertifikate von (d)einer Zertifizierungsstelle.."  <- Comodo bietet mir keine Option Clientzertifikate mit den vorhanden Zertifikat für meine Domain zu erstellen.

 

Wie soll ich da vorgehen? Soll ich auf dem Windows Server die Rolle Zertifizierungstelle installieren und damit die Client-Zertifikate erstellen ? 

 

Ist es richtig, dass die Client-Zertifiakte für die jeweiligen Benutzer Bestandteile von meinen gekauften Zertifikate der Domain besitzen? Ich meine ja.

Link zu diesem Kommentar

Das wird beim User oder am Client in den Zertifikatsspeicher hinzugefügt. Was soll der Server oder die Domain damit? Der Server benöitgt nachher nur den öffentlichen Teil des Zertifikates (Teilweise dien Schritt 6).

 

Ob du jetzt blind Zertifikate kaufst oder evtl. ersteinmal mit selbstsignierten oder einen eigenen CA experementierst, musst du wissen ;)

Link zu diesem Kommentar

K.a. Ich würde dir empfehlen dich über Zertifikat zu informieren und dies einmal in einer Testumgebung mit eigener eigenen PKI testen (entweder eine Windows CA oder mit der Anleitung von Testperson).

Alternativ kannst du dich sicher an den Support von Comodo wenden. Ich kann dir nicht sagen ob dieses Zertifikat wirklich funktioniert, das wäre aber das Naheliegende.

Link zu diesem Kommentar

Alles klar, werde ich mal testen. Zumindest steht unten "Authenticate who logs into your website". Ich werde es mal versuchen, ein Versuch schadet nicht.

 

 

Das wird beim User oder am Client in den Zertifikatsspeicher hinzugefügt. Was soll der Server oder die Domain damit? Der Server benöitgt nachher nur den öffentlichen Teil des Zertifikates (Teilweise dien Schritt 6).  <- so wie ich das verstehe, muss das Zertifikat, der öffentliche Teil auf dem Webserver im Zertifikatsspeicher abgelegt werden. Kommt es in einen bestimmten Platz?

 

Beim user installiere ich das Zertifikat im Zertifikatsspeicher hinein und binde das im Browser mitein. Richtig?

Link zu diesem Kommentar

Hallo alle zusammen,

 

ich hab mir ein personal authentication certificate besorgt und es eingebunden. Aktuell funktioniert der Aufruf der Domain nur wenn ich das client certificate auf dem client installiere so wie es sein soll. Nur funktioniert die Funktion Element sperren im IIS Manager wo ich die Benutzer mit deren Certificate anlege nicht.

 

Hab ihr hier eine Idee wo der Fehler vielleicht sein kann? Ich möchte gerne die Sperrfunktion nutzen, falls ich mal einen Benutzer sperren müsste und der Zugriff mit seinen Certificate verweigert werden soll.

 

Muss ich noch irgendwo den Benutzer eintragen oder nur unter Konfigurations-Editor unter der Domain? Da funktionierts auf jedenfall nicht.

 

 

Grüße

 

christiano

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...