|
Project Information
Featured
Downloads
Links
|
CAS 2.0 Authentication for Blackboardblackboard-cas is a CAS authentication module for Blackboard. It utilizes the CAS 3.1 client library in order to connect to CAS 2.x/3.x servers (using the CAS 2.0 protocol). blackboard-cas is based on CasAuthenticationModule, developed by the University of Bristol. ConfigurationBefore building, you should edit the settings in build.properties. Settings include:
BuildingMake a directory named lib in the blackboard-cas folder. It will need the following files (from cas-client-3.1.10-release.zip):
You'll also need an instance of Blackboard in C:\blackboard in order to build. You'll need apache ant (1.8.2) and apache maven (2.2.1) to run the build. Once you have this, you can build with ant: C:\folder\with\ant.bat -lib lib The build process will execute the main method of the plugin, and it should crash with an invalid ticket exception. If you get a different exception, the plugin was probably unable to connect to your CAS server. Installation
Then update C:\blackboard\config\authentication.properties, add the settings from dist\cas-authentication.properties to it, and change bbconfig.auth.type in C:\blackboard\config\bb-config.properties to cas.
C:\blackboard\system\build\bin\launch-app.bat: rem # CAS set THIRD_PARTY_CP=%THIRD_PARTY_CP%;cas-bbauth.jar set THIRD_PARTY_CP=%THIRD_PARTY_CP%;cas-client-core-3.1.10.jar set THIRD_PARTY_CP=%THIRD_PARTY_CP%;xmlsec-1.3.0.jar set THIRD_PARTY_CP=%THIRD_PARTY_CP%;commons-logging-1.1.1.jar rem # CAS C:\blackboard\system\build\bin\launch-tool.bat: rem # CAS set THIRD_PARTY_CP=%THIRD_PARTY_CP%;cas-bbauth.jar set THIRD_PARTY_CP=%THIRD_PARTY_CP%;cas-client-core-3.1.10.jar set THIRD_PARTY_CP=%THIRD_PARTY_CP%;xmlsec-1.3.0.jar set THIRD_PARTY_CP=%THIRD_PARTY_CP%;commons-logging-1.1.1.jar rem # CAS C:\blackboard\apps\collab-server\config\wrapper.conf.bb: # CAS # only use cas-bbauth.jar here if collab and app server on same box wrapper.java.classpath.43=@@bbconfig.basedir@@/systemlib/cas-bbauth.jar wrapper.java.classpath.44=@@bbconfig.basedir@@/systemlib/cas-client-core-3.1.10.jar wrapper.java.classpath.45=@@bbconfig.basedir@@/systemlib/xmlsec-1.3.0.jar wrapper.java.classpath.46=@@bbconfig.basedir@@/systemlib/commons-logging-1.1.1.jar # CAS C:\blackboard\apps\snapshot\config\env.cmd.bb: rem # CAS set CP=%CP%;%BBLIB%\cas-bbauth.jar set CP=%CP%;%BBLIB%\cas-client-core-3.1.10.jar set CP=%CP%;%BBLIB%\xmlsec-1.3.0.jar rem set CP=%CP%;%BBLIB%\commons-logging-1.1.1.jar rem # CAS C:\blackboard\apps\content-exchange\bin\content-exchange.bat.bb: rem # CAS set CP=%CP%;%BBLIB%\cas-bbauth.jar set CP=%CP%;%BBLIB%\cas-client-core-3.1.10.jar set CP=%CP%;%BBLIB%\xmlsec-1.3.0.jar rem set CP=%CP%;%BBLIB%\commons-logging-1.1.1.jar # file already has this elsewhere rem # CAS
Issues
No. The CAS 3.1 client library provides support for proxy tickets, but this is not yet implemented in blackboard-cas.
Your CAS server is using an SSL certificate that isn't in Java's database of trusted keys (known as the keystore). If you're using a self-signed certificate for testing purposes, you should add it to either Java's keystore or Blackboard's keystore, using keytool.
You will need to replace the login form with a login link (or something similar), by customizing the login page as follows:
View the blackboard home page - you should now see the link and no longer see the login form. This gets you the functionality - you may want to add other html or css to make it look nicer.
Setting the message that a user is not in the db does not seem to be working in BB9 the way it works in BB8. Use the lookup_user_in_BB property and set it to true, to enable a manual/explicit check for the user in the database. |