-
大小: 2.34MB文件類型: .rar金幣: 2下載: 0 次發(fā)布日期: 2023-09-20
- 語(yǔ)言: 其他
- 標(biāo)簽:
資源簡(jiǎn)介
該校園身份管理系統(tǒng)包括3個(gè)子系統(tǒng):
(1)身份管理子系統(tǒng):實(shí)現(xiàn)身份認(rèn)證功能。
(2)校園投票子系統(tǒng):配合實(shí)現(xiàn)單點(diǎn)登錄的子系統(tǒng)。系統(tǒng)管理員,負(fù)責(zé)對(duì)投票項(xiàng)目增、刪、查、改等維護(hù)工作;普通用戶可以匿名投票,無(wú)需登錄認(rèn)證。
(3)校園學(xué)生信息管理系統(tǒng):配合實(shí)現(xiàn)單點(diǎn)登錄的子系統(tǒng)。系統(tǒng)管理員負(fù)責(zé)對(duì)學(xué)生信息增、刪、查、改等維護(hù)工作。
(1)實(shí)現(xiàn)網(wǎng)絡(luò)的身份管理,為網(wǎng)絡(luò)用戶提供唯一的賬號(hào);
(2)統(tǒng)一的登錄門戶,不同的用戶界面,不同的應(yīng)用服務(wù);
(3)實(shí)現(xiàn)一次登錄,訪問(wèn)不同的應(yīng)用服務(wù);
(4)利用統(tǒng)一的平臺(tái)和接口規(guī)范,將各種信息資源與相關(guān)系統(tǒng)集成起來(lái)。

代碼片段和文件信息
package?auth;
import?java.io.*;
import?java.util.*;
import?java.util.concurrent.*;
import?javax.servlet.*;
import?javax.servlet.http.*;
import?ldap.LdapBean;
/**
?*
?*?@author?Guo?ShuYang
?*?@version
?*/
//類SSOAuth用來(lái)驗(yàn)證Web應(yīng)用派發(fā)過(guò)來(lái)的用戶的信息的合法性,是單點(diǎn)登錄系統(tǒng)的核心類
public?class?SSOAuth?extends?HttpServlet?{???
??
static?private?ConcurrentMap?accounts; //用來(lái)存儲(chǔ)從ldap目錄中讀取的用戶信息
????static?private?ConcurrentMap?SSOIDs; //用來(lái)存儲(chǔ)臨時(shí)生成的用戶身份標(biāo)識(shí)
????String?cookiename?=?“?“; //?本應(yīng)用中使用的cookie的名字
????String?domainname?=?“?“; //?本應(yīng)用部署的服務(wù)器的域名
private?String?gotoURL?=?“?“; //?身份驗(yàn)證成功派發(fā)到的目標(biāo)地址
LdapBean?ldap?=?new?LdapBean(); //?從ldap目錄中讀取用戶信息的Bean類
????
????//?初始化系統(tǒng)的一些參數(shù)
public?void?init(ServletConfig?config)?throws?ServletException?{
????????super.init(config);
????????domainname=?config.getInitParameter(“domainname“);
????????cookiename?=?config.getInitParameter(“cookiename“);
????????SSOIDs?=?new?ConcurrentHashMap();
????????accounts=new?ConcurrentHashMap();
????????accounts=ldap.getAccountsInfo();
????}
????
//?處理來(lái)自Web應(yīng)用派發(fā)過(guò)來(lái)的請(qǐng)求
????protected?void?processRequest(HttpServletRequest?request?HttpServletResponse?response)
????throws?ServletException?IOException?{
????????PrintWriter?out?=?response.getWriter();
????????String?action?=?request.getParameter(“action“); //查新請(qǐng)求的動(dòng)作類型
????????gotoURL?=?request.getParameter(“goto“);
String?result=“failed“;
????????if?(action==null)?{??//第一次登錄系統(tǒng),派發(fā)到登錄頁(yè)面
????????????handlerFromLogin(requestresponse);
????????}?
????????else?if?(action.equals(“authcookie“)){?//驗(yàn)證cookie有效性
????????????String?myCookie?=?request.getParameter(“cookiename“);
????????????if?(myCookie?!=?null)??result?=?authCookie(myCookie);
????????????out.print(result);
????????????out.close();
????????}?
????????else?if?(action.equals(“authuser“))?{?//驗(yàn)證用戶信息有效性
????????????result=authNameAndPasswd(requestresponse);
????????????out.print(result);
????????????out.close();
????????}??
????????else?if?(action.equals(“l(fā)ogout“))?{ //處理注銷服務(wù)
????????????String?myCookie?=?request.getParameter(“cookiename“);
????????????logout(myCookie);
????????????out.close();
????????}
????}???
????
??????
????//?靜態(tài)函數(shù),驗(yàn)證cookie的有效性
????static?public?String?authCookie(String?value){
????????String?result?=?(String)?SSOIDs.get(value);
????????if?(result?==?null)?{
????????????result?=?“failed“;
????????????System.out.println(“Authentication?failed!“);
????????}?else?{
????????????System.out.println(“Authentication?success!“);
????????}
????????return?result;
????}
????
????//?靜態(tài)函數(shù),驗(yàn)證用戶名的有效性
????static?public?String?authUserAndPass(String?username?String?password){
????????String?pass?=?(String)accounts.get(username);
????????if?((pass==null)||(!pass.equals(password)))?
???????? return?“failed“;
????????String?newID?=?createUID();
????????SSOIDs.put(newID?username);
????????return?username;
????}????
????
????//驗(yàn)證用戶的密碼有效性
????protected?String?authNa
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件????????229??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\init.ldif
?????文件???????2451??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\slapd.conf
?????文件????????554??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\SSOAuth\.classpath
?????文件????????294??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\SSOAuth\.myme
?????文件???????1225??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\SSOAuth\.project
?????文件???????6269??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\SSOAuth\src\auth\SSOAuth.java
?????文件???????5558??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\SSOAuth\src\ldap\LdapBean.java
?????文件????????622??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\SSOAuth\WebRoot\failed.html
?????文件???????3738??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\SSOAuth\WebRoot\images\background2.gif
?????文件????????230??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\SSOAuth\WebRoot\images\bottomback.png
?????文件????????236??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\SSOAuth\WebRoot\images\topback.png
?????文件???????2436??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\SSOAuth\WebRoot\login.jsp
?????文件?????????39??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\SSOAuth\WebRoot\me
?????文件???????2650??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\SSOAuth\WebRoot\pattern.css
?????文件???????5332??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\SSOAuth\WebRoot\WEB-INF\classes\auth\SSOAuth.class
?????文件???????5591??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\SSOAuth\WebRoot\WEB-INF\classes\ldap\LdapBean.class
?????文件??????22769??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\SSOAuth\WebRoot\WEB-INF\lib\fscontext.jar
?????文件?????125243??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\SSOAuth\WebRoot\WEB-INF\lib\ldap.jar
?????文件??????77116??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\SSOAuth\WebRoot\WEB-INF\lib\providerutil.jar
?????文件???????1066??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\SSOAuth\WebRoot\WEB-INF\web.xm
?????文件????????825??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\StudentManager\.classpath
?????文件????????315??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\StudentManager\.myme
?????文件???????1232??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\StudentManager\.project
?????文件???????1960??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\StudentManager\src\bean\DBConnBean.java
?????文件???????3391??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\StudentManager\src\bean\LdapBean.java
?????文件???????3494??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\StudentManager\src\bean\PageBean.java
?????文件???????1487??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\StudentManager\src\bean\StudentBean.java
?????文件???????2323??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\StudentManager\src\servlet\AddServlet.java
?????文件???????1912??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\StudentManager\src\servlet\DeleteServlet.java
?????文件???????2105??2008-10-31?19:48??基于LDAP的單點(diǎn)登錄方案的設(shè)計(jì)與實(shí)現(xiàn)\StudentManager\src\servlet\SearchServlet.java
............此處省略93個(gè)文件信息
評(píng)論
共有 條評(píng)論