Ejemplo n.º 1
0
    private void GetKeysFromIni()
    {
        string strIniPath = ConfigurationManager.AppSettings["SecIniPath"].ToString();

        Vista.SEC.Common.INIProcessor iPro = new Vista.SEC.Common.INIProcessor(strIniPath);

        //取值
        Vista.SEC.Coder coder = new Vista.SEC.Coder(); //無引數,表示採用系統預設的Key,兩個Key皆為固定值
        hfKey1.Value = coder.Decrypt(iPro.ReadValue("Main", "Key1"));
        hfKey2.Value = coder.Decrypt(iPro.ReadValue("Main", "Key2"));
    }
Ejemplo n.º 2
0
        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);

            string SecIniPath = ConfigurationManager.AppSettings["SecIniPath"].ToString();
            string SystemID   = ConfigurationManager.AppSettings["SystemID"].ToString();
            string ConnList   = ConfigurationManager.AppSettings["ConnList"].ToString();

            string[] system = SystemID.Split(new char[',']);
            string[] conns  = ConnList.Split(new char[',']);
            #region ³]©wKey1 and Key2
            //ŪiniÀÉ
            Vista.SEC.Coder   coder = new Vista.SEC.Coder();
            Vista.SEC.IniUtil INI   = new Vista.SEC.IniUtil(SecIniPath);
            Application.Add("SECKey1", coder.Decrypt(INI.ReadValue("Main", "Key1")));
            Application.Add("SECKey2", coder.Decrypt(INI.ReadValue("Main", "Key2")));
            #endregion

            #region ³]©wConnection Pool

            Vista.SEC.ConnectionPool CP = new Vista.SEC.ConnectionPool(SecIniPath);
            foreach (var conn in conns)
            {
                CP.SetConnection(conn);
            }

            //Vista.DBSSEC.ConnectionPool CP;
            //CP = new Vista.DBSSEC.ConnectionPool(SecIniPath);
            //CP.SetConnection(SystemID, ConnList);


            //for (int i = 0; i < system.Length; i++)
            //{
            //    Application.Add(system[i], Vista.DBSSEC.ConnectionPool.GetConnection(conns[i]));
            //}
            //Application.Add("CONNSEC", Vista.DBSSEC.ConnectionPool.GetConnection("CONNSEC"));
            //Application.Add("CONNPIPA", Vista.DBSSEC.ConnectionPool.GetConnection("CONNPIPA"));
            #endregion
        }
Ejemplo n.º 3
0
        void Application_Start(object sender, EventArgs e)
        {
            // 應用程式啟動時執行的程式碼
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);

            string SecIniPath = ConfigurationManager.AppSettings["SecIniPath"].ToString(); //"D:\\Solution1\\INI\\RES.ini"
            //string SystemID = ConfigurationManager.AppSettings["SystemID"].ToString();     //"RES"
            string ConnList = ConfigurationManager.AppSettings["ConnList"].ToString();     //"CONNCLEAN"

            //string[] system = SystemID.Split(new char[] { ',' });
            string[] conns = ConnList.Split(new char[] { ',' });

            #region 設定Key1 and Key2

            Vista.SEC.Coder   coder = new Vista.SEC.Coder();
            Vista.SEC.IniUtil INI   = new Vista.SEC.IniUtil(SecIniPath);
            Application.Add("SECKey1", coder.Decrypt(INI.ReadValue("Main", "Key1")));
            Application.Add("SECKey2", coder.Decrypt(INI.ReadValue("Main", "Key2")));
            #endregion

            #region 設定Connection Pool

            Vista.SEC.ConnectionPool CP = new Vista.SEC.ConnectionPool(SecIniPath);
            foreach (var conn in conns)
            {
                CP.SetConnection(conn);
            }

            //CP = new Vista.DBSSEC.ConnectionPool(SecIniPath);
            //CP.SetConnection(SystemID, ConnList);

            //for (int i = 0; i< system.Length;i++)
            //{
            //    Application.Add(system[i],Vista.DBSSEC.ConnectionPool.GetConnection(conns[i]));
            //}

            //Application.Add("CONNSEC", Vista.DBSSEC.ConnectionPool.GetConnection("CONNSEC"));
            //Application.Add("CONNPIPA", Vista.DBSSEC.ConnectionPool.GetConnection("CONNPIPA"));
            #endregion
        }
Ejemplo n.º 4
0
        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();
            GlobalConfiguration.Configure(WebApiConfig.Register);
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);

            //API JSon
            GlobalConfiguration.Configuration.Formatters.XmlFormatter.SupportedMediaTypes.Clear();

            string SecIniPath = ConfigurationManager.AppSettings["SecIniPath"].ToString();
            //string SystemID = ConfigurationManager.AppSettings["SystemID"].ToString();  //A,B,C
            string ConnList = ConfigurationManager.AppSettings["ConnList"].ToString();  //1,2,3

            //string[] system = SystemID.Split(new char[] { ',' });
            string[] conns = ConnList.Split(new char[] { ',' });

            #region ³]©wKey1 and Key2

            Vista.SEC.Coder   coder = new Vista.SEC.Coder();
            Vista.SEC.IniUtil INI   = new Vista.SEC.IniUtil(SecIniPath);
            Application.Add("SECKey1", coder.Decrypt(INI.ReadValue("Main", "Key1")));
            Application.Add("SECKey2", coder.Decrypt(INI.ReadValue("Main", "Key2")));

            #endregion

            #region ³]©wConnection Pool

            Vista.SEC.ConnectionPool CP = new Vista.SEC.ConnectionPool(SecIniPath);
            foreach (var conn in conns)
            {
                CP.SetConnection(conn);
            }
            //for (int i = 0; i < system.Length; i++)
            //{
            //    Application.Add(system[i], Vista.SEC.ConnectionPool.GetConnection(conns[i]));
            //}
            #endregion
        }
Ejemplo n.º 5
0
        void Application_Start(object sender, EventArgs e)
        {
            // 應用程式啟動時執行的程式碼

            string SecIniPath = ConfigurationManager.AppSettings["SecIniPath"].ToString();
            string SystemID   = ConfigurationManager.AppSettings["SystemID"].ToString();
            string ConnList   = ConfigurationManager.AppSettings["ConnList"].ToString();

            string[] system = SystemID.Split(new char[',']);
            string[] conns  = ConnList.Split(new char[',']);
            #region 設定Key1 and Key2
            //讀ini檔
            Vista.SEC.Coder   coder = new Vista.SEC.Coder();
            Vista.SEC.IniUtil INI   = new Vista.SEC.IniUtil(SecIniPath);
            Application.Add("SECKey1", coder.Decrypt(INI.ReadValue("Main", "Key1")));
            Application.Add("SECKey2", coder.Decrypt(INI.ReadValue("Main", "Key2")));
            #endregion

            #region 設定Connection Pool

            Vista.SEC.ConnectionPool CP = new Vista.SEC.ConnectionPool(SecIniPath);
            foreach (var conn in conns)
            {
                CP.SetConnection(conn);
            }

            //Vista.DBSSEC.ConnectionPool CP;
            //CP = new Vista.DBSSEC.ConnectionPool(SecIniPath);
            //CP.SetConnection(SystemID, ConnList);


            //for (int i = 0; i < system.Length; i++)
            //{
            //    Application.Add(system[i], Vista.DBSSEC.ConnectionPool.GetConnection(conns[i]));
            //}
            //Application.Add("CONNSEC", Vista.DBSSEC.ConnectionPool.GetConnection("CONNSEC"));
            //Application.Add("CONNPIPA", Vista.DBSSEC.ConnectionPool.GetConnection("CONNPIPA"));
            #endregion
        }
Ejemplo n.º 6
0
    //解密字串
    private string DecryptStringWithCurrentKeys(string strStringToDecrypt)
    {
        Vista.SEC.Coder coder = new Vista.SEC.Coder(hfKey1.Value, hfKey2.Value);

        return(coder.Decrypt(strStringToDecrypt));
    }
Ejemplo n.º 7
0
    /// <summary>
    /// 設定使用者資料
    /// </summary>
    /// <param name="UserID"></param>
    protected void SetSessionInfo(string UserID)
    {
        #region 20120418: Jimull, ANZ 環境不可使用 Cookie, 如有必要請先向 Account Manager 確認
        //HttpCookie SessionCookie = new HttpCookie("UserID");
        //SessionCookie.Value = UserID;
        //SessionCookie.Expires = DateTime.Now.AddDays(1);
        //Response.Cookies.Add(SessionCookie);
        #endregion
        Vista.SEC.Business.SystemPageBiz mySysBiz = new Vista.SEC.Business.SystemPageBiz();
        Vista.SEC.Information.UserInfo   userInfo = new Vista.SEC.Information.UserInfo();
        Vista.SEC.Information.Department UserDept = new Vista.SEC.Information.Department();
        userInfo.UserID = UserID;
        userInfo.Load();

        // 用於需使用 Window 驗證時須進行判斷
        // 如果 Session UserID 遺失
        // 則須重新取得 window 帳戶名稱進行驗證
        // 如果 使用環境為 公司開發環境 DEV_01 將不進行 Window 驗證
        if (!IsDEVEnvironment)
        {
            if (!GetUserInfo(out userInfo))
            {
                //UserInfo 無此人員 window 帳號資訊時會倒入登入失敗畫面
                //ScriptManager.RegisterStartupScript(this, GetType(), "logon", "javascript:window.top.location.href='" + Request.ApplicationPath + "/LoginFailed.aspx';", true);
                Server.Transfer(Request.ApplicationPath + "/LoginFailed.aspx");
                return;
            }
        }

        //20120914: 當 user dpetid = call center 十 把dpetid 改為 Tid (客服中心)
        string    callCenterDeptID = string.Empty;
        DataTable dtPara           = mySysBiz.GetSystemParameterList("CALL_CENTER_DEPTID", string.Empty);
        if (dtPara.Rows.Count == 1)
        {
            callCenterDeptID = dtPara.Rows[0]["ParameterValue"].ToString();
        }

        //設定User資訊
        Session["UserID"]     = userInfo.UserID;
        Session["UserName"]   = userInfo.Name;
        Session["UserCName"]  = userInfo.CName;
        Session["UserDeptID"] = userInfo.DeptID;

        //取得User的部門
        UserDept.DeptID = userInfo.DeptID;
        UserDept.Load();
        Session["UserDeptCName"] = UserDept.DeptCName;

        //取得權限清單(使用StringCollection的方式儲存)
        Vista.SEC.Business.Security secBiz    = new Vista.SEC.Business.Security();
        StringCollection            scFunList = secBiz.GetAuthList(userInfo.UserID, 1) as StringCollection;
        Session["AuthList"] = (object)scFunList;



        //20120418: 每次登入 Key1, Key2 皆會重新產生
        //設定網址列參數的加密金鑰
        string          strTempKey1 = "";
        string          strTempKey2 = "";
        Vista.SEC.Coder coder       = new Vista.SEC.Coder(out strTempKey1, out strTempKey2);
        Session["strKey1"] = strTempKey1;
        Session["strKey2"] = strTempKey2;

        Session.Timeout = 30; //雖然在這有設定,但是還有其他因素會影響 Session Timeout
    }