2016-04-04 10 views
0

Ich muss AD LDS über SSL konfigurieren Ich versuche jeden Artikel seit zwei Tagen dieses http://erlend.oftedal.no/blog/?blogid=7 scheint vernünftig, aber ich blieb stecken bei der Erteilung Leseberechtigung für AD LDS-Instanz für das Zertifikat.Verwenden von AD LDS über SSL

dies ist der offizielle Artikel und der erste Schritt dafür ist wirklich vage wissen nicht, was https://msdn.microsoft.com/en-us/library/cc725767(v=ws.10).aspx#BKMK_1

tun CA Ich verwende Windows Server 2012 r2

Antwort

0

ich durch die Konfiguration des Unternehmens getan haben zuerst und dann auf dieser Seite mit Anleitung

http://social.technet.microsoft.com/wiki/contents/articles/2980.ldap-over-ssl-ldaps-certificate.aspx#Reasons

in der folgenden Reihenfolge

  1. Veröffentlichen eines Zertifikats, die Server-Authentifizierung Unterstützt

    Am Punkt 5 dieser Schritt, der

    „5. Lassen Sie in dem Dialogfeld Vorlage duplizieren das ausgewählte Windows Server 2003 Enterprise ausgewählt und klicken Sie dann auf OK.

    Wählen Sie sorgfältig Ihr relevantes Betriebssystem aus, sagen Sie verlassen Standard, aber ich war Windows Server 2012 R2, also wähle ich die wählen Sie Ihre relevanten OS ein I wurde mit..

  2. exportieren LDAPS-Zertifikat und importieren für die Verwendung mit AD DS

  3. Überprüfen einer LDAPS Verbindung

Warum sollte ich brauche ADLDS Verbindung über SSL?

Da ich möchte, dass der Benutzer sein ADLDS-Passwort ändert, erlaubte mir die Nicht-SSL-Verbindung mit PrincipalContext dies nicht. So, jetzt benutze ich den folgenden Code, es funktioniert wie ein Zauber.

PrincipalContext pc = new PrincipalContext(
        ContextType.ApplicationDirectory, 
        "YourServerUrl:YourSSLPort", 
        "CN=YourPartitionName,DC=partition,DC=com", 
        ContextOptions.SimpleBind | ContextOptions.SecureSocketLayer, 
        "FullDistinguisedNameOfUser", 
        "PasswordOfUser"); 

bool IsUserValidated = pc.ValidateCredentials(
        "FullDistinguisedNameOfUser", 
        "PasswordOfUser", 
        ContextOptions.SimpleBind | ContextOptions.SecureSocketLayer); 


      if (IsUserValidated) 
      { 
       UserPrincipal up = UserPrincipal.FindByIdentity(
       "FullDistinguisedNameOfUser", 
       "PasswordOfUser"); 

       up.ChangePassword("UserOldPassword", "UserNewPassword"); 
      }