/// <summary> /// /// </summary> /// <param name="personFetchHandler"></param> /// <param name="handler"></param> /// <param name="communicateToken"></param> /// <param name="seed"></param> public SessionServer(PersonFetchHandler personFetchHandler, SSOLoginHandler handler, String communicateToken, string seed) { this._commToken = communicateToken; this._ssoHandler = handler; ISessionSet set = SessionManager.GetDefaultSessionSet(); this._sessionManager = new SessionManager(set, personFetchHandler, seed ?? "tmpssokas"); this._ssoHandler = handler; }
/// <summary> /// 登陆 /// </summary> /// <param name="usr"></param> /// <param name="pwd"></param> /// <param name="handler"></param> /// <returns></returns> public bool Login(string usr, string pwd, SSOLoginHandler handler) { int personId = 0; if ((personId = handler(usr, pwd)) > 0) { this._sessionManager.SaveSession(personId); return(true); } return(false); }
/// <summary> /// /// </summary> /// <param name="set"></param> /// <param name="personFetchHandler"></param> /// <param name="handler"></param> /// <param name="communicateToken"></param> /// <param name="seed">随机种子</param> public SessionServer(ISessionSet set, PersonFetchHandler personFetchHandler, SSOLoginHandler handler, String communicateToken, string seed) { if (set == null) { throw new ArgumentNullException("set is null"); } this._commToken = communicateToken; this._ssoHandler = handler; this._sessionManager = new SessionManager(set, personFetchHandler, seed ?? "tmpssokas"); }
static server() { PersonFetchHandler handler = personId => { return(new Person { Id = 1, Enabled = true, Name = "刘铭", Sex = 1, Username = "******" }); }; SSOLoginHandler ssoHandler = (user, pwd) => { return(1); }; SessionSington = new SessionServer(handler, ssoHandler, "123456", null); }
internal RequestHandle(IPlugin plugin) { this._plugin = plugin; PersonFetchHandler ph = a => { return(new Person { Id = a, Name = "用户A" }); }; SSOLoginHandler lh = (usr, pwd) => { return(1); }; ISessionSet set = SessionManager.GetDefaultSessionSet(); this._serve = new SessionServer(set, ph, lh, "123456", "tmpsso"); this._serve.RegisterClient("http://localhost:8001/sso_api"); }