廣告聯播

顯示具有 LDAP 標籤的文章。 顯示所有文章
顯示具有 LDAP 標籤的文章。 顯示所有文章

2009年10月22日 星期四

XOOPS 2.3.3b 與 AD 的帳號整合

From: Polin Wei

廢話不多說, 直接來看設定值:

作業環境:

LDAP 認證的環境:

OS: Windows Server 2k3 SP2
Domain: mydomain.com
Host: ad.mydomain.com
LDAP Search User: xoopser ( 此 User 放在 Windows Server 2k3 AD 內定的 Users 目錄CN下)


XOOPS 運作的環境:

XOOPS Version - XOOPS 2.3.3b
PHP Version - 5.2.6
MySQL Version - 5.0.51b-community-nt-log
Server API Version - apache2handler
OS Version - WINNT

記得要將 php.ini 中的 ldap extension 啟用,並重啟 apache server

extension=php_ldap.dll


在 XOOPS 管理模組的設定如下:

Preferences Main »» Authentication Options
Authentication Method: Microsoft Active Directory ©
LDAP - Port Number: 389
LDAP - Server Name: ad.mydomain.com
LDAP - Base DN: dc=mydomain,dc=com
DN of the LDAP manager: cn=xoopser,cn=Users,dc=mydomain,dc=com <= 搜尋用的帳號,需使用完整的 DN , 注意預設的 Users , 是 cn , 不是 ou
Password of the LDAP manager: **********
LDAP Version protocol: 3
Users allowed to bypass LDAP authentication: admin
Login name use in the DN: No
LDAP Attribute use to search the user: sAMAccountName
The search filter LDAP query to find user: 空白
The domain name: mydomain.com
Automatic xoops account provisionning: Yes
Default affect group: 會員
LDAP - Mail Field Name: mail
LDAP - Given Name Field Name: givenname
LDAP - Surname Field Name: sn
Xoops-Auth server fields mapping: email=mail|name=displayname
Maintain xoops account provisionning: Yes
Use TLS connection: No

看截圖 [英文版]

看截圖 [中文版]


這樣夠清楚了吧!! 搞了我一個下午...希望對大家有幫助

2009年3月6日 星期五

[Java] 建立由 LDAP AD 認證的機制

From: Polin Wei

環境:
OS : Windows Server 2k3
Domain: mydomain.com
Host : x.x.x.x(此為指定 ip address)

以 Java 程式撰寫 對 LDAP-AD 的認證, 程式碼如下:

import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingEnumeration;
import javax.naming.NamingException;
import javax.naming.directory.Attribute;
import javax.naming.directory.Attributes;
import javax.naming.directory.BasicAttribute;
import javax.naming.directory.DirContext;
import javax.naming.directory.InitialDirContext;
import javax.naming.directory.ModificationItem;
import javax.naming.directory.SearchControls;
import javax.naming.directory.SearchResult;
import javax.naming.ldap.InitialLdapContext;
import javax.naming.ldap.LdapContext;
 /**
     * AD LDAP 登入認證
     *
     * @param ldap_url   like ldap://x.x.x.x:389/DC=mydomain,DC=com
     * @param account
     * @param password
     * @return String[0] array 0 :0 success,1 fail,2 LDAP connect fail,3 unknow
     */
    public String[] LDAP_AUTH_AD(String ldap_url, String account, String password) {
        String[] returnStr = new String[2];
        Hashtable<String, String> env = new Hashtable<String, String>();
        env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory");
        env.put(Context.PROVIDER_URL, ldap_url);
        env.put(Context.SECURITY_AUTHENTICATION, "simple");
        env.put(Context.SECURITY_PRINCIPAL, account+"@mydomain.com");
        env.put(Context.SECURITY_CREDENTIALS, password);

        LdapContext ctx = null;
        try {
            ctx = new InitialLdapContext(env, null);
            returnStr[0] = "0";
        } catch (javax.naming.AuthenticationException e) {
            returnStr[0] = "1";

            return returnStr;
        } catch (javax.naming.CommunicationException e) {
            // System.out.println("Can't connect to ldap server!");
            returnStr[0] = "2";

            return returnStr;
        } catch (Exception e) {
            System.out.println("error");
            e.printStackTrace();
            returnStr[0] = "3";

            return returnStr;
        } finally {
            if (ctx != null) {
                try {
                    ctx.close();
                } catch (NamingException e) {

                }
            }
        }
    }

2009年2月11日 星期三

[dotProject] dotProject 與 AD 使用 LDAP 的帳號整合

From: Polin Wei

dotProject 運作的環境:
OS: Cent OS 4.x
GD: 2.0.33-9.4
WEB: Apache HTTP Server 2.2.3-22
PHP: 5.1.6-23
MySQL: 5.0.45-7
dotProject: dotProject_2.1_RC2_20070529_UTF-8_Chinese_by_Markwu.zip (目前穩定的版本)
下載點1(備用網站): dotProject_2.1_RC2_20070529_UTF-8_Chinese_by_Markwu.zip
下載點2(官方網站): dotProject_2.1_RC2_20070529_UTF-8_Chinese_by_Markwu.zip

LDAP 認證的環境:
OS: Windows Server 2k3 SP2
Domain: mydomain.com
Host: ad.mydomain.com
LDAP Search User: dotprojecter ( 此 User 放在 Windows Server 2k3 AD 內定的 Users 目錄CN下)

安裝的文章可以參考 使用 DotProject 架設 Project Server,整合 AD 2003 帳號(適用 CentOS 4) 但此篇文章中有一些設定上的錯誤. 修正如下:

1. 點選「System Admin / System Configuration」。

2. 在「User Authentication Settings」中參考下列參數:
   User Authentication Method:LDAP
   Postnuke login also allows Standard Login:打勾

3. 在「LDAP Settings」中參考下列參數:
   LDAP Host:ad.mydomain.com <- AD Server
   LDAP Port:389
   LDAP Version:3
   LDAP Base DN:dc=mydomain,dc=com <- 這裡只要輸入 Domain Name 即可
   LDAP User Filter:(sAMAccountName=%USERNAME%)
   LDAP Search User:cn=dotprojecter,cn=Users,dc=mydomain,dc=com <- 搜尋用的帳號,需使用完整的 DN , 注意預設的 Users , 是 cn , 不是 ou
   LDAP Search User Password:*******
   LDAP also allows standard login:打勾
   點選「Save」儲存。

這樣就可以了

WordPress 架站必備外掛