`
cjnajr
  • 浏览: 7533 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

sakai integration with LDAP

阅读更多
Sakai和LDAP的整合

现在需要LDAP来统一管理和认证用户的信息,所以需要sakai与ldap密切整合。我们选用的ldap版本是openLDAP。

可以直接下载windows 版的安装程序,默认安装就好,有些版本会自动地把Berkeyle DB 也安装好。我安装版本是openldap-2.2.29-db-4.3.29-openssl-0.9.8a-win32_Setup.exe,也就自动安装好了Berkeyle DB。最主要的工作是配置slapd.conf。配置好后,运行slapd -d 256即可察看是否成功。256是记录日志的等级(0 - 256),具体的说明可以参看官方网站。我选用的provider是Alternative JLDAP Providers,可以从sakai网站下载整个project,然后替换掉以前的providers即可。

slapd.conf需要根据sakai的需要做配置。主要配置如下所示:

slapd.conf片断

suffix     "dc=nldap,dc=com"

rootdn "cn=manager,dc=nldap,dc=com"

rootpw {MD5}lUbTrx0LmzDXkyabcdeOA==

index   cn,sn,uid,mail,displayName eq

access to attrs=userPassword

by self write

by anonymous auth

by dn.base="cn=manager,dc=nldap,dc=com" write

by * none

access to *

     by self write

      by dn.base="cn=manager,dc=nldap,dc=com" write

by * read



sakai-src\providers\component\src\webapp\WEB-INF\jldap-beans.xml片断

<bean id="org.sakaiproject.user.api.UserDirectoryProvider"

class="edu.amc.sakai.user.JLDAPDirectoryProvider" init-method="init" destroy-method="destroy" singleton="true">

<property name="ldapHost">

<value>127.0.0.1</value>

</property>

<property name="ldapPort">

<value>389</value>

</property>

<property name="ldapUser">

<value>cn=manager,dc=nldap,dc=com</value>

</property>

<property name="ldapPassword">

<value>mypassword</value>

</property>

<property name="basePath">

<value>cn=manager,dc=nldap,dc=com</value>

</property>

<property name="caseSensitiveCacheKeys">

<value>false</value>

</property>

<property name="updateUserAfterAuthentication">

<value>true</value>

</property>

<property name="ldapAttributeMapper">

<ref bean="edu.amc.sakai.user.LdapAttributeMapper" />

</property>

</bean>

<bean id="edu.amc.sakai.user.LdapAttributeMapper class="edu.amc.sakai.user.SimpleLdapAttributeMapper"

init-method="init" singleton="true">

<property name="attributeMappings">

<map>

<entry key="login"><value>cn</value></entry>

<entry key="firstName"><value>givenName</value></entry>

<entry key="lastName"><value>sn</value></entry>

<entry key="email"><value>mail</value></entry>

<entry key="groupMembership"><value>displayName</value></entry>

</map>

</property>

<property name="userTypeMapper">

<ref bean="edu.amc.sakai.user.EmptyStringUserTypeMapper" />

</property>

</bean>



sakai.properties片断

ldapHost@org.sakaiproject.user.api.UserDirectoryProvider=127.0.0.1

ldapPort@org.sakaiproject.user.api.UserDirectoryProvider=389

basePath@org.sakaiproject.user.api.UserDirectoryProvider=dc=nldap,dc=com

ldapUser@org.sakaiproject.user.api.UserDirectoryProvider=cn=manager,dc=nldap,dc=com

ldapPassword@org.sakaiproject.user.api.UserDirectoryProvider=sakai

log.config.count=1

log.config.1=DEBUG.edu.amc.sakai.user.JLDAPDirectoryProvider



载入entry

命令是ldapadd -f sldap.conf -l user.ldif

user.ldif文件主要部分

dn: dc=nldap,dc=com

objectclass: top

objectclass: dcObject

objectclass: organization

o: nldap

dc: nldap

dn: cn=manager,dc=nldap,dc=com

objectclass: organizationalRole

cn: manager

dn: uid=wangqian,dc=nldap,dc=com

uid: wangqian

objectClass: top

objectClass: person

objectClass: organizationalPerson

objectClass: inetOrgPerson

mail: wangqian@sina.com

userPassword: test

givenName: Qian

displayName: student

sn: Qian

cn: wangqian



注意到前面的sladp.conf中的index行,可以发现为了查询entry需要把属性列在index中。然后可以用命令

ldapsearch -h localhost -p 389 -b "dc=nldap,dc=com" cn=wangqian即可。如果不能工作,说明配置有误,需要检查更改。

然后再在sakai-src\providers下smaven sakai 即可。

与登录时用户名对应的属性(attribute)是cn,登录密码对应的是userPassword。其次,sakai用户的Last  Name, First Name和email依次对应的ldap entry的attribute分布是sn, givename和mail(这些对应信息可以在jldap-beans.xml做相应修改)。用户类型默认的是student。
分享到:
评论

相关推荐

    Sakai部署步骤 (1)1

    在本文中,我们将详细探讨如何部署Sakai教育平台,主要关注环境准备、MySQL数据库的安装与配置,以及Sakai的部署流程。Sakai是一个开源的学习管理系统,广泛用于教育机构,支持教学、协作和评估活动。让我们一步步来...

    Sakai 2.6 配置

    例如,Sakai支持LDAP、Shibboleth等多种认证机制: ``` sakai.authn.provider=local sakai.basiclti密钥=yourBasicLTISecretKey sakai.basiclti消费者秘钥=yourConsumerKey ``` 6. **工具集成**:Sakai通过...

    Sakai-src基于Sakai的源码文件

    《Sakai-src:探索与理解Sakai开源教育平台的源码》 Sakai,作为一款全球知名的开源教育协作平台,为教育者和学习者提供了丰富的在线教学工具和服务。其源码版本,即"Sakai-src",是开发者和教育技术爱好者深入研究...

    Sakai的开发文档

    ### Sakai开发文档知识点概述 #### 一、Sakai简介 - **定义与起源**:Sakai是一项由美国的几所顶尖大学——印第安纳大学、密歇根大学、斯坦福大学以及麻省理工学院共同发起的开源课程管理系统(CMS)项目。该项目始于...

    sakai样式修改手册

    在Sakai这个开源教育平台中,样式修改是提升用户界面体验的重要环节。要修改Sakai的样式,首先需要了解CSS(Cascading Style Sheets)的作用,它负责定义网页的布局和外观。以下是详细步骤: 1. **查找当前页面CSS*...

    使用Sakai构建开放式教学平台(完整版)

    3. **API开放**:提供了开放的Web服务接口,支持与其他学习管理系统(LMS)或学生信息系统(SIS)的集成,同时兼容LDAP,增强了系统间的互联互通。 4. **开发模式开放**:Sakai基金会负责项目的方向决策,社区和学校可...

    Sakai 框架与内核 附件下载

    《Sakai框架与内核详解》 Sakai是一个开源的教育软件平台,它为全球的教育机构提供了一个协作和学习的环境。Sakai框架与内核是其核心组成部分,它们共同构成了一个强大的系统架构,支持各种教学和学习应用的开发与...

    sakai的安装配置

    ### Sakai 的安装与配置详解 #### 一、概述 Sakai 是一款开源的教育协作平台,广泛应用于教育机构中。本文档旨在详细介绍 Sakai 2.9.0 版本的安装与配置过程,并解决在安装过程中可能遇到的一些常见问题。 #### ...

    JAVA中使用LDAP进行用户认证.pdf

    在具体实施过程中,如文中提到的SunSITE项目中,使用Sakai作为在线学习平台时,需将用户认证过程与LDAP相结合。以下是关键步骤: 1. **建立连接:**通过`LdapHelper.java`类,初始化与LDAP服务器的连接。该类利用`...

    sakai 用户注册业务流程分析

    Sakai 是一款被广泛应用于高等教育领域的开源课程管理系统(CMS)。它不仅提供了一个强大的平台用于支持教学与学习活动,而且还具备良好的架构设计,能够确保系统的解耦性、扩展性和稳定性。这使得 Sakai 成为了企业...

    sakai doc 2.9.3

    【标题】"sakai doc 2.9.3" 指的是 Sakai 教育平台的2.9.3版本的文档资料。Sakai 是一个开源的协作与学习环境,它提供了多种工具和服务,支持教育和学术机构的教学、研究以及协作活动。 【描述】"sakai-javadoc-...

    SAKAI 架构 的前世今生

    **SAKAI架构的前世今生** SAKAI,作为一个开源的教育技术平台,自2003年成立以来,已经在全球范围内被广泛应用于教学、学习和协作。它的设计初衷是为了提供一个灵活、可扩展且易用的环境,促进学术交流与合作。本文...

    sakai安装文档,很有用的

    sakai安装文档,很有用的安装Sakai App Builder

    sakai charon分析文档

    ### Sakai Charon 分析 #### 一、Sakai简介与特性 Sakai作为一个广泛应用在高等教育领域的开源课程管理系统,其设计具有高度的模块化和灵活性,这使其成为了一个非常受欢迎的选择。对于那些需要定制化教学平台的...

    E-learning sakai 用户手册

    Sakai 是由高校、商业组织和个人开发者组成的社区,致力于开发一个通用的协作学习环境(Collaboration and Learning Environment,CLE)。Sakai是基于Educational Community License(开源软件许可证的一种)的教育软件...

    sakai-portal-api-2.9.0-b05.zip

    标题 "sakai-portal-api-2.9.0-b05.zip" 暗示了这是一个关于Sakai门户API的版本包,版本号为2.9.0的b05迭代。Sakai是一个开源的教育软件平台,主要用于构建网络学习环境,它提供了丰富的工具和服务,如课程管理、...

    sakai-介绍

    【标题】"Sakai-介绍" Sakai是一个开源的教育技术平台,主要用于构建在线学习社区和管理系统。它提供了一系列工具,支持教学、协作、评估和资源共享等教育活动,帮助教师、学生和管理员实现教育目标。Sakai的设计...

    Sakai部署步骤1

    在本文中,我们将详细探讨如何部署Sakai教育平台,主要关注Sakai的环境配置、MySQL数据库的安装以及配置信息的修改。Sakai是一个开源的协作与学习管理系统,广泛应用于高等教育机构,用于构建在线课程和教学环境。 ...

    sakai 的权限流程分析-详细的源码调用过程

    sakai是广泛应用于高校的开源课程管理系统,具有良好的架构设计,具有很好的解耦行、扩展性和稳定性。目前sakai的二次开发广泛流行于企业、高校和个人,希望有兴趣我们可以共同交流,欢迎交流!

Global site tag (gtag.js) - Google Analytics