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教育平台,主要关注环境准备、MySQL数据库的安装与配置,以及Sakai的部署流程。Sakai是一个开源的学习管理系统,广泛用于教育机构,支持教学、协作和评估活动。让我们一步步来...
例如,Sakai支持LDAP、Shibboleth等多种认证机制: ``` sakai.authn.provider=local sakai.basiclti密钥=yourBasicLTISecretKey sakai.basiclti消费者秘钥=yourConsumerKey ``` 6. **工具集成**:Sakai通过...
《Sakai-src:探索与理解Sakai开源教育平台的源码》 Sakai,作为一款全球知名的开源教育协作平台,为教育者和学习者提供了丰富的在线教学工具和服务。其源码版本,即"Sakai-src",是开发者和教育技术爱好者深入研究...
### Sakai开发文档知识点概述 #### 一、Sakai简介 - **定义与起源**:Sakai是一项由美国的几所顶尖大学——印第安纳大学、密歇根大学、斯坦福大学以及麻省理工学院共同发起的开源课程管理系统(CMS)项目。该项目始于...
在Sakai这个开源教育平台中,样式修改是提升用户界面体验的重要环节。要修改Sakai的样式,首先需要了解CSS(Cascading Style Sheets)的作用,它负责定义网页的布局和外观。以下是详细步骤: 1. **查找当前页面CSS*...
3. **API开放**:提供了开放的Web服务接口,支持与其他学习管理系统(LMS)或学生信息系统(SIS)的集成,同时兼容LDAP,增强了系统间的互联互通。 4. **开发模式开放**:Sakai基金会负责项目的方向决策,社区和学校可...
《Sakai框架与内核详解》 Sakai是一个开源的教育软件平台,它为全球的教育机构提供了一个协作和学习的环境。Sakai框架与内核是其核心组成部分,它们共同构成了一个强大的系统架构,支持各种教学和学习应用的开发与...
### Sakai 的安装与配置详解 #### 一、概述 Sakai 是一款开源的教育协作平台,广泛应用于教育机构中。本文档旨在详细介绍 Sakai 2.9.0 版本的安装与配置过程,并解决在安装过程中可能遇到的一些常见问题。 #### ...
在具体实施过程中,如文中提到的SunSITE项目中,使用Sakai作为在线学习平台时,需将用户认证过程与LDAP相结合。以下是关键步骤: 1. **建立连接:**通过`LdapHelper.java`类,初始化与LDAP服务器的连接。该类利用`...
Sakai 是一款被广泛应用于高等教育领域的开源课程管理系统(CMS)。它不仅提供了一个强大的平台用于支持教学与学习活动,而且还具备良好的架构设计,能够确保系统的解耦性、扩展性和稳定性。这使得 Sakai 成为了企业...
【标题】"sakai doc 2.9.3" 指的是 Sakai 教育平台的2.9.3版本的文档资料。Sakai 是一个开源的协作与学习环境,它提供了多种工具和服务,支持教育和学术机构的教学、研究以及协作活动。 【描述】"sakai-javadoc-...
**SAKAI架构的前世今生** SAKAI,作为一个开源的教育技术平台,自2003年成立以来,已经在全球范围内被广泛应用于教学、学习和协作。它的设计初衷是为了提供一个灵活、可扩展且易用的环境,促进学术交流与合作。本文...
sakai安装文档,很有用的安装Sakai App Builder
### Sakai Charon 分析 #### 一、Sakai简介与特性 Sakai作为一个广泛应用在高等教育领域的开源课程管理系统,其设计具有高度的模块化和灵活性,这使其成为了一个非常受欢迎的选择。对于那些需要定制化教学平台的...
Sakai 是由高校、商业组织和个人开发者组成的社区,致力于开发一个通用的协作学习环境(Collaboration and Learning Environment,CLE)。Sakai是基于Educational Community License(开源软件许可证的一种)的教育软件...
标题 "sakai-portal-api-2.9.0-b05.zip" 暗示了这是一个关于Sakai门户API的版本包,版本号为2.9.0的b05迭代。Sakai是一个开源的教育软件平台,主要用于构建网络学习环境,它提供了丰富的工具和服务,如课程管理、...
【标题】"Sakai-介绍" Sakai是一个开源的教育技术平台,主要用于构建在线学习社区和管理系统。它提供了一系列工具,支持教学、协作、评估和资源共享等教育活动,帮助教师、学生和管理员实现教育目标。Sakai的设计...
在本文中,我们将详细探讨如何部署Sakai教育平台,主要关注Sakai的环境配置、MySQL数据库的安装以及配置信息的修改。Sakai是一个开源的协作与学习管理系统,广泛应用于高等教育机构,用于构建在线课程和教学环境。 ...
sakai是广泛应用于高校的开源课程管理系统,具有良好的架构设计,具有很好的解耦行、扩展性和稳定性。目前sakai的二次开发广泛流行于企业、高校和个人,希望有兴趣我们可以共同交流,欢迎交流!