2016-04-06 19 views
0

Meteor AppのLDAP認証を実装する必要があります。LDAPサーバーが現在存在しないため、流星でopenLDAPを使用するJS

ローカルマシンでの実装にOpenLDAPを使用できますか?

私は.. LDAP認証について多くを知らないので、私は私が得ることができる任意の助けに感謝することができます..私は私の友人は再び

 Template.ldapLogin.events({ 
     'submit #login-form': function (e) { 
      e.preventDefault(); 
      var form = $(e.target); 
      var username = form.find("#login-form-username").val(); 
      var password = form.find("#login-form-password").val(); 

      if (username === "admin") { 
      Meteor.loginWithPassword(username, password, function (error) { 
       if (! error && password === "admin") { 
       // Set switch to trigger alert to change password 
       Session.setPersistent("passChangePrompt", 1); 
       } 
      }); 
      } else { 
      Meteor.loginWithLDAP(username, password, 
       { dn: "uid=" + username + ",ou=<foo>,dc=<bar>,dc=<baz>,dc=<qux>" }, 
       function (error, success) { 
       if (error) { 
        console.log(error.reason); 
       } else { 
        FlowRouter.redirect('/'); 
       }; 
      }); 
      } 
     } 
     }); 
     Server: 

     Meteor.startup(function() { 
     LDAP_DEFAULTS.url = 'ldap://<ask your IT dude or gal>'; 
     LDAP_DEFAULTS.dn = 'ou=<foo>,dc=<bar>,dc=<baz>,dc=<qux>'; 
     LDAP_DEFAULTS.port = ''; 
     LDAP_DEFAULTS.searchResultsProfileMap = [ 
      { 
      resultKey: 'cn', 
      profileProperty: 'name' 
      } 
      ,{ 
      resultKey: 'mail', 
      profileProperty: 'phoneNumber' 
      } 
     ] 
     }); 

感謝を提供しているこのコードの下記の部分を実装しています

答えて

0

はい、ローカル開発マシンにOpenLDAPをインストールして実行することができます。既定のLDAPポートは、定義していない389です。お使いのOSによっては、ポートを開いている可能性があります。

Meteorインターフェイスに対処する前に、LDAPクライアントとBINDのLDAPクライアントを使用してLDAPサーバーにLDAPクライアントを設定し、LDAP認証を有効にします(LDAP BINDと呼ばれます)。認証を検証したら、それはただSMOP Meteorです。