/// <summary> /// /// </summary> /// <param name="userId"></param> /// <param name="password"></param> /// <param name="sessionId"></param> /// <returns></returns> private DocsPaWR.UserLogin CreateUserLogin(string userId, string password, string sessionId) { //if (string.IsNullOrEmpty(password) && Session["multiPwd"] != null) if (string.IsNullOrEmpty(password) && ViewState["pwdMultiAmm"] != null) { password = ViewState["pwdMultiAmm"].ToString(); ViewState.Remove("pwdMultiAmm"); } DocsPaWR.UserLogin userLogin = new DocsPAWA.DocsPaWR.UserLogin(); userLogin.UserName = userId; userLogin.Password = password; userLogin.IdAmministrazione = this.m_idAmministrazione; userLogin.IPAddress = this.Request.UserHostAddress; userLogin.SessionId = sessionId; DocsPaWR.BrowserInfo bra = new DocsPaWR.BrowserInfo(); bra.activex = Request.Browser.ActiveXControls.ToString(); bra.browserType = Request.Browser.Browser; bra.browserVersion = Request.Browser.Version; string clientIP = HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"]; if (String.IsNullOrEmpty(clientIP)) { clientIP = HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"]; } bra.ip = clientIP; bra.javaApplet = Request.Browser.JavaApplets.ToString(); bra.javascript = Request.Browser.JavaScript.ToString(); bra.userAgent = Request.UserAgent; userLogin.BrowserInfo = bra; return(userLogin); }
/// <summary> /// Nuova gestione della Login con gli utenti amm.ri profilati /// </summary> private void LoginProfilata() { try { string userId = this.txt_userid.Text.Trim(); string userPassword = this.txt_pwd.Text.Trim(); if (!string.IsNullOrEmpty(userId) && !string.IsNullOrEmpty(userPassword)) { DocsPAWA.AdminTool.Manager.AmministrazioneManager manager = new DocsPAWA.AdminTool.Manager.AmministrazioneManager(); DocsPAWA.DocsPaWR.EsitoOperazione esito = new DocsPAWA.DocsPaWR.EsitoOperazione(); DocsPAWA.DocsPaWR.UserLogin userLogin = new DocsPAWA.DocsPaWR.UserLogin(); userLogin.UserName = userId; userLogin.Password = userPassword; userLogin.SessionId = Session.SessionID; userLogin.IPAddress = this.Request.UserHostAddress; esito = manager.Login(userLogin, false, out datiAmministratore); // gestione della sessione dei dati dell'utente amministratore DocsPAWA.AdminTool.Manager.SessionManager session = new DocsPAWA.AdminTool.Manager.SessionManager(); session.setUserAmmSession(datiAmministratore); switch (esito.Codice) { case 0: // tutto ok this._userID = this.txt_userid.Text.Trim(); this._userPWD = this.txt_pwd.Text.Trim(); this.gotoHomePageProfilata(); break; case 1: // errore generico this.GUI("error"); session.removeUserAmmSession(); break; case 99: // utente non riconosciuto this.GUI("unknown"); session.removeUserAmmSession(); break; case 100: // utente già connesso this.GUI("locked"); this.hd_pwd.Value = userPassword; break; case 200: // ....NON GESTITO!... utente presente su più amministrazioni (non vale per il SYSTEM ADMIN [tipo = 1]) break; } } } catch { this.GUI("error"); } }
//private DocsPAWA.DocsPaWR.EsitoOperazione LoginAmministrazione(string userid, string pwd) //{ // AmmUtils.WebServiceLink ws = new AmmUtils.WebServiceLink(); // DocsPaWR.EsitoOperazione esito = new DocsPAWA.DocsPaWR.EsitoOperazione(); // esito = ws.Login(userid, pwd); // return esito; //} private DocsPAWA.DocsPaWR.EsitoOperazione LoginAmministrazione(DocsPAWA.DocsPaWR.UserLogin userLogin, bool forceLogin, out DocsPAWA.DocsPaWR.InfoUtenteAmministratore datiAmministratore) { datiAmministratore = null; AmmUtils.WebServiceLink ws = new AmmUtils.WebServiceLink(); DocsPaWR.EsitoOperazione esito = new DocsPAWA.DocsPaWR.EsitoOperazione(); esito = ws.Login(userLogin, forceLogin, out datiAmministratore); return(esito); }
private DocsPaWR.UserLogin CreateUserLogin() { DocsPaWR.Utente utente = UserManager.getUtente(this); //return this.CreateUserLogin(utente.userId, this.txt_vecchiaPWD.Text, this.Session.SessionID); DocsPaWR.UserLogin userLogin = new DocsPAWA.DocsPaWR.UserLogin(); userLogin.UserName = utente.userId; userLogin.Password = this.txt_vecchiaPWD.Text; userLogin.IdAmministrazione = utente.idAmministrazione; userLogin.IPAddress = this.Request.UserHostAddress; userLogin.SessionId = this.Session.SessionID; return(userLogin); }
private DocsPaWR.UserLogin CreateUserLogin() { DocsPaWR.UserLogin userLogin = new DocsPAWA.DocsPaWR.UserLogin(); userLogin.UserName = txt_userID.Value; userLogin.Password = txt_password.Value; //string returnMsg = string.Empty; //DocsPaWR.Amministrazione[] amministrazioni = UserManager.getListaAmministrazioni(this, out returnMsg); //userLogin.IdAmministrazione = amministrazioni[0].systemId; userLogin.IPAddress = this.Request.UserHostAddress; return(userLogin); }
/// <summary> /// /// </summary> /// <param name="lgn"></param> /// <param name="message"></param> /// <returns></returns> private bool ForcedLogin(DocsPAWA.DocsPaWR.UserLogin lgn) { bool result = false; DocsPaWR.LoginResult loginResult; DocsPaWR.Utente utente = UserManager.ForcedLogin(this, lgn, out loginResult); if (loginResult == DocsPAWA.DocsPaWR.LoginResult.OK) { result = true; // L'utente e' stato connesso utente.urlWA = Utils.getHttpFullPath(this); Session["userData"] = utente; this.LaunchApplication(); } return(result); }
private void AccessOnNewSessionProfilato() { try { DocsPAWA.AdminTool.Manager.AmministrazioneManager manager = new DocsPAWA.AdminTool.Manager.AmministrazioneManager(); DocsPAWA.AdminTool.Manager.SessionManager session = new DocsPAWA.AdminTool.Manager.SessionManager(); DocsPAWA.DocsPaWR.EsitoOperazione esito = new DocsPAWA.DocsPaWR.EsitoOperazione(); datiAmministratore = session.getUserAmmSession(); DocsPAWA.DocsPaWR.UserLogin userLogin = new DocsPAWA.DocsPaWR.UserLogin(); userLogin.UserName = datiAmministratore.userId; userLogin.Password = this.hd_pwd.Value; userLogin.SessionId = Session.SessionID; userLogin.IPAddress = this.Request.UserHostAddress; esito = manager.Login(userLogin, true, out datiAmministratore); if (esito.Codice.Equals(0)) { session.setUserAmmSession(datiAmministratore); this._userID = datiAmministratore.userId; this._userPWD = this.hd_pwd.Value; this.gotoHomePageProfilata(); } else { this.GUI("error"); } } catch { this.GUI("error"); } }
/// <summary> /// /// </summary> /// <param name="lgn"></param> /// <param name="message"></param> /// <returns></returns> private bool loginAction(DocsPAWA.DocsPaWR.UserLogin lgn, out string message) { bool resLogin = false; message = string.Empty; string ipaddress = ""; DocsPaWR.LoginResult loginResult; DocsPaWR.Utente utente = UserManager.login(this, lgn, out loginResult, out ipaddress); switch (loginResult) { case DocsPAWA.DocsPaWR.LoginResult.OK: resLogin = true; // L'utente e' stato connesso this.LaunchApplication(); break; case DocsPAWA.DocsPaWR.LoginResult.UNKNOWN_USER: if ((ConfigSettings.getKey(ConfigSettings.KeysENUM.POLICY_AGENT_ENABLED) != null && ConfigSettings.getKey(ConfigSettings.KeysENUM.POLICY_AGENT_ENABLED).ToUpper() == Boolean.TrueString.ToUpper())) { message = "L'utente non è autorizzato ad accedere all'applicazione"; } else { message = "Nome o password errati"; } break; case DocsPAWA.DocsPaWR.LoginResult.USER_ALREADY_LOGGED_IN: string loginMode = null; try { loginMode = ConfigSettings.getKey(ConfigSettings.KeysENUM.ADMINISTERED_LOGIN_MODE); } catch (Exception) {} if (loginMode == null || loginMode.ToUpper() == Boolean.TrueString.ToUpper()) { // Gestione tramite tool di amministrazione message = "L'utente ha gia' una connessione aperta. Contattare l'amministrazione."; } else { // Gestione autonoma da parte dell'utente message = "L'utente ha gia' una connessione aperta."; // Store login object Session.Add("loginData", lgn); // Lettura del valore della chiave di configurazione AUTO_FORCE_LOGIN bool autoForce; Boolean.TryParse(System.Configuration.ConfigurationManager. AppSettings["AUTO_FORCE_LOGIN"], out autoForce); // Se è attiva la chiave di configurazione AUTO_FORCE_LOGIN if (autoForce) { // ...allora redizioniamo la response aggiungendo forceLogin=True alla // request Response.Redirect("login.aspx?forceLogin=True", false); } else { // ...altrimenti si procede nel modo classico string script = "<script>forceLogin('" + ipaddress + "');</script>"; Page.RegisterStartupScript("NotifyUser", script); } } break; case DocsPAWA.DocsPaWR.LoginResult.DISABLED_USER: message = "Utente non abilitato"; break; case DocsPAWA.DocsPaWR.LoginResult.NO_RUOLI: message = "L'utente non può accedere al sistema perché non è<br>associato a nessun ruolo"; break; case DocsPAWA.DocsPaWR.LoginResult.NO_AMMIN: //aggiunto sabrina m_idAmministrazione = "-1"; message = "Selezionare un'amministrazione"; break; case DocsPAWA.DocsPaWR.LoginResult.PASSWORD_EXPIRED: // Gestione scadenza password this.OnPasswordExpired = true; this.OldPassword = lgn.Password; message = "La password dell'utente risulta scaduta. Immettere una nuova password."; break; case DocsPAWA.DocsPaWR.LoginResult.DTCM_SERVICE_NO_CONTACT: message = "Errore, I Servizi del Documentale DTCM non sono raggiungibili."; break; case DocsPAWA.DocsPaWR.LoginResult.UNKNOWN_AMMIN: message = "Errore, Amministrazione inesistente."; break; case DocsPAWA.DocsPaWR.LoginResult.UNKNOWN_DTCM_USER: message = "Errore, L'utente non risulta presente nel Documentale DTCM."; break; case DocsPAWA.DocsPaWR.LoginResult.DB_ERROR: message = "Errore nella connessione al Database durante la procedura di login."; break; default: // Application Error message = "Errore nella procedura di Login. Contattare l'amministrazione."; break; } //Pec multi-amm //< hflLoginResult.Value = loginResult.ToString(); //> if (resLogin) { utente.urlWA = Utils.getHttpFullPath(this); Session["userData"] = utente; } return(resLogin); }
//public DocsPAWA.DocsPaWR.EsitoOperazione Login(string userid, string pwd) //{ // return LoginAmministrazione(userid, pwd); //} public DocsPAWA.DocsPaWR.EsitoOperazione Login(DocsPAWA.DocsPaWR.UserLogin userLogin, bool forceLogin, out DocsPAWA.DocsPaWR.InfoUtenteAmministratore datiAmministratore) { return(LoginAmministrazione(userLogin, forceLogin, out datiAmministratore)); }
public void ExecuteForcedLogin() { try { DocsPaWR.UserLogin lgn = new DocsPAWA.DocsPaWR.UserLogin(); /* Integrazione IAM*/ string policyAgent = null; policyAgent = ConfigSettings.getKey(ConfigSettings.KeysENUM.POLICY_AGENT_ENABLED); if ((policyAgent != null && policyAgent.ToUpper() == Boolean.TrueString.ToUpper())) { vic.Integra VIC = new vic.Integra(Context, ""); lgn.UserName = VIC.amData.account.ToString(); lgn.Token = VIC.amData.account.ToString() + '&' + VIC.amData.codFiscale.ToString() + '&' + VIC.amData.matricola.ToString(); string appo = VIC.amData.account.ToString() + "&" + ConfigSettings.getKey(ConfigSettings.KeysENUM.CHIAVE_TOKEN).ToString() + '&' + VIC.amData.codFiscale.ToString() + '&' + VIC.amData.matricola.ToString(); byte[] bt_datiInput = ASCIIEncoding.ASCII.GetBytes(appo); lgn.Token = lgn.Token + '&' + DocsPaUtils.Security.CryptographyManager.CalcolaImpronta(bt_datiInput); if (String.IsNullOrEmpty(VIC.amData.account.ToString()) || String.IsNullOrEmpty(VIC.amData.codFiscale.ToString()) || String.IsNullOrEmpty(VIC.amData.matricola.ToString())) { this.ErrorMessage = this.ErrorMessage = INCORRECT_DATA_FORMAT_ACCESS_MANAGER; return; } } else { lgn.UserName = UserId; lgn.Password = UserPwd; } /*fine Integrazione IAM*/ lgn.IdAmministrazione = IdAmministrazione; DocsPaWR.LoginResult loginResult; utente = UserManager.ForcedLogin(this.Page, lgn, out loginResult); switch (loginResult) { case DocsPAWA.DocsPaWR.LoginResult.OK: ErrorMessage = null; break; case DocsPAWA.DocsPaWR.LoginResult.UNKNOWN_USER: ErrorMessage = UNKNOWN_USER_MSG; pgType = PageType.authentication; break; case DocsPAWA.DocsPaWR.LoginResult.USER_ALREADY_LOGGED_IN: ErrorMessage = USER_ALREADY_LOGGED_MSG; string loginMode = null; try { loginMode = ConfigSettings.getKey(ConfigSettings.KeysENUM.ADMINISTERED_LOGIN_MODE); } catch (Exception) {} if (loginMode == null || loginMode.ToUpper() == Boolean.TrueString.ToUpper()) { // Gestione tramite tool di amministrazione pgType = PageType.authentication; } else { ErrorMessage = USER_ALREADY_LOGGED_ASK_FOR_FORCE_MSG; pgType = PageType.choice; } break; case DocsPAWA.DocsPaWR.LoginResult.DISABLED_USER: ErrorMessage = DISABLED_USER_MSG; pgType = PageType.authentication; break; case DocsPAWA.DocsPaWR.LoginResult.NO_RUOLI: ErrorMessage = USER_WITH_NO_RULE_MSG; pgType = PageType.authentication; break; default: // Application Error ErrorMessage = GENERIC_ERROR_MSG; pgType = PageType.authentication; break; } } catch (Exception) { ErrorMessage = GENERIC_ERROR_MSG; pgType = PageType.authentication; } if (utente == null) { AddToSession(); } else { if (utente.ruoli.Length > 0) { utente.ruoli[0].selezionato = true; } UserManager.setUtente(this.Page, utente); //Session["userData"] = utente; UserManager.setRuolo(this.Page, utente.ruoli[0]); if (utente.ruoli[0].registri != null && utente.ruoli[0].registri.Length > 0) { UserManager.setRegistroSelezionato(this.Page, utente.ruoli[0].registri[0]); } this.GoToHomePage(); } }