예제 #1
0
        /// <summary>
        /// Modifica password utente
        /// </summary>
        /// <param name="newPassword"/></param>
        /// <param name="utente"></param>
        ///// <returns></returns>
        public DocsPaVO.Validations.ValidationResultInfo ChangeUserPwd(DocsPaVO.utente.UserLogin user, string oldPassword)
        {
            DocsPaVO.Validations.ValidationResultInfo result = new DocsPaVO.Validations.ValidationResultInfo();

            DocsPaDB.Query_DocsPAWS.Utenti utenti = new DocsPaDB.Query_DocsPAWS.Utenti();
            if (!utenti.CambiaPassword(user, oldPassword))
            {
                result.BrokenRules.Add(new DocsPaVO.Validations.BrokenRule("ChangePassword_ERROR", "Errore nella modifica della password per il documentale FILENET", DocsPaVO.Validations.BrokenRule.BrokenRuleLevelEnum.Error));
            }

            if (result.BrokenRules.Count == 0)
            {
                // gestione specifica per Filenet---------------------------------------------------------
                string oldPwd = utenti.GetPasswordUserFilenet(user.UserName);

                if (!this.ChangeUserFilenetPassword(user.UserName, oldPwd, user.UserName, user.IdAmministrazione))
                {
                    result.BrokenRules.Add(new DocsPaVO.Validations.BrokenRule("ChangePassword_ERROR", "Errore nella modifica della password per il documentale FILENET", DocsPaVO.Validations.BrokenRule.BrokenRuleLevelEnum.Error));
                }
            }

            result.Value = (result.BrokenRules.Count == 0);

            return(result);
        }
예제 #2
0
        public string LoginToFileNet(DocsPaVO.utente.UserLogin userLogin, string gruppoFilenet)
        {
            logger.Debug("init login");

            string password = userLogin.Password;

            if (userLogin.Dominio != null && userLogin.Dominio.Length > 0)
            {
                DocsPaDB.Query_DocsPAWS.Utenti utenti = new DocsPaDB.Query_DocsPAWS.Utenti();
                password = utenti.GetPasswordUserFilenet(userLogin.SystemID, true);
            }

            string dst = "";

            IDMError.ErrorManager idmErrorManager = new IDMError.ErrorManager();

            try
            {
                IDMObjects.Library oLibrary;
                oLibrary = getFileNETLib(userLogin);
                logger.Debug("Library name=" + oLibrary.Name);
                if (oLibrary.Logon(userLogin.UserName, password, gruppoFilenet,
                                   IDMObjects.idmLibraryLogon.idmLogonOptNoUI
                                   //IDMObjects.idmLibraryLogon.idmLogonOptUseNetworkNoUI
                                   ))
                {
                    dst = oLibrary.LogonId.ToString();
                }
            }
            catch (Exception e)
            {
                string msg = e.Message;
                logger.Debug("msg errore in fileNetLogon = " + msg);
                for (int i = 1; i < idmErrorManager.Errors.Count; i++)
                {
                    msg += " " + idmErrorManager.Errors[i].Description;
                }
                throw new Exception(msg);
            }

            return(dst);
        }
예제 #3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="utente"></param>
        /// <returns></returns>
        public EsitoOperazione ModificaUtente(OrgUtente utente)
        {
            // memorizzo la vecchia PWD per Filenet
            DocsPaDB.Query_DocsPAWS.Utenti user = new DocsPaDB.Query_DocsPAWS.Utenti();
            string oldPwdFileNet = user.GetPasswordUserFilenet(utente.UserId);

            EsitoOperazione result = this.InstanceETDOCS.ModificaUtente(utente);

            if (result.Codice == 0)
            {
                UserManager userManager = new UserManager();
                bool        retValue    = userManager.UpdateUserFilenet(utente.UserId, oldPwdFileNet, utente.Password, string.Format("{0} {1}", utente.Cognome, utente.Nome), utente.IDAmministrazione);
                if (!retValue)
                {
                    result.Codice      = 10;
                    result.Descrizione = "si è verificato un errore: modifica dati utente in FILENET";
                }
            }

            return(result);
        }