using System; using System.Collections.Generic; using System.Linq; using System.Web; using QMFrameWork.ServiceInterface; using QMFrameWork.ServiceLibrary; using QMAPP.Entity.Sys; using QMAPP.BLL.Sys; namespace QMFrameWork.ServiceLibrary { /// /// 服务校验管理 /// public class AuthorizationManager { /// /// 服务静态密码 /// public static string ServiceCredential { get; set; } public void IsAuthorization(ServiceRequest request) { if (string.IsNullOrEmpty(request.UserCredential.CredentialID) == true) throw new Exception("登录超时,请重新登录。"); ServiceSession session = SessionManager.GetSession(request.UserCredential.CredentialID); if (session == null) { //应用二次登录 LoginInfo login = null; if (string.IsNullOrEmpty(request.UserCredential.UserName) == false && string.IsNullOrEmpty(request.UserCredential.PassWord) == false) { string passWord = QMFrameWork.Common.Encrypt.DESEncrypt.Decrypt(request.UserCredential.PassWord); login = new LoginBLL().IsLogin(new LoginInfo { LoginUserID = request.UserCredential.UserName, PassWord = passWord }); } if (login != null) { request.UserCredential.UserName = login.UserName; SessionManager.Add(request.UserCredential.CredentialID, new ServiceSession { SessionID = request.UserCredential.CredentialID, UserCredential = request.UserCredential, UserLogin = login }, new TimeSpan(0, 240, 0)); } else { if (request.UserCredential.CredentialID != ServiceCredential) throw new Exception("服务凭据不正确。"); } } } } }