Exemplo n.º 1
0
        public static SqlConnection GetSqlConnectionOnMaster()
        {
            string sqlConnection = String.Format(@"user id={0};password={1};data source={2};persist security info=False;initial catalog={3};connection timeout=10",
                                                 RemoteServerSettings.GetSettings().LoginName, RemoteServerSettings.GetSettings().Password, RemoteServerSettings.GetSettings().ServerName, "MASTER");

            return(new SqlConnection(sqlConnection));
        }
Exemplo n.º 2
0
        private SqlConnection _getAccountSqlconnection()
        {
            Log.RemotingServiceLogger.Debug("Call get_account_sqlconnection");

            if (_currentConnection == null)
            {
                _currentConnection = new SqlConnection();

                string chaine = "user id=" + RemoteServerSettings.GetSettings().LoginName + ";password="******";server=" +
                                RemoteServerSettings.GetSettings().ServerName + ";initial catalog=Accounts";
                _currentConnection.ConnectionString = chaine;
                _currentConnection.Open();
            }
            return(_currentConnection);
        }
Exemplo n.º 3
0
        public static bool CheckSQLDatabaseConnection()
        {
            string sqlConnection = String.Format(@"user id={0};password={1};data source={2};persist security info=False;initial catalog={3};connection timeout=10",
                                                 RemoteServerSettings.GetSettings().LoginName, RemoteServerSettings.GetSettings().Password, RemoteServerSettings.GetSettings().ServerName, "Accounts");
            SqlConnection connection = new SqlConnection(sqlConnection);

            try
            {
                connection.Open();
                connection.Close();
                return(true);
            }
            catch (Exception)
            {
                return(false);
            }
        }
Exemplo n.º 4
0
        public bool UpdateAccountActive(string pAccountName, bool pActive)
        {
            string sqlConnection = String.Format(@"user id={0};password={1};data source={2};persist security info=False;initial catalog={3};connection timeout=10",
                                                 RemoteServerSettings.GetSettings().LoginName, RemoteServerSettings.GetSettings().Password, RemoteServerSettings.GetSettings().ServerName, "Accounts");


            SqlConnection connection = new SqlConnection(sqlConnection);

            try
            {
                connection.Open();
                int affectedRows = DatabaseManager.UpdateAccountActive(pAccountName, pActive, connection);
                connection.Close();
                return(affectedRows == 1);
            }
            catch
            {
                connection.Close();
                throw;
            }
        }
Exemplo n.º 5
0
        public bool CreateAccountDatabase(string pScriptPath)
        {
            string sqlConnection = String.Format(@"user id={0};password={1};data source={2};persist security info=False;initial catalog={3};connection timeout=10",
                                                 RemoteServerSettings.GetSettings().LoginName, RemoteServerSettings.GetSettings().Password, RemoteServerSettings.GetSettings().ServerName, "MASTER");

            SqlConnection connection = new SqlConnection(sqlConnection);

            try
            {
                connection.Open();
                DatabaseManager.CreateDatabase("Accounts", connection);
                DatabaseManager.ExecuteScript(pScriptPath, "Accounts", connection);
                connection.Close();
                return(true);
            }
            catch
            {
                connection.Close();
                throw;
            }
        }
Exemplo n.º 6
0
        // Check the validity of the login/pass/account
        private bool _checkAccount(Token pSqlToken, string pOctoLogin, string pOctoPass)
        {
            Log.RemotingServiceLogger.Debug("Call CheckAccount");

            if (pSqlToken == null)
            {
                Log.RemotingServiceLogger.Debug("Call CheckAccount with pSqlToken null");
                return(false);
            }

            Log.RemotingServiceLogger.DebugFormat("Call check_account user = {0} pass = {1} token = login {2}, pass {3}, account {4}", pOctoLogin, pOctoPass, pSqlToken.Login, pSqlToken.Pass, pSqlToken.Account);
            int           valid             = 0;
            string        connection_string = "user id=" + pSqlToken.Login + ";password="******";server=" + RemoteServerSettings.GetSettings().ServerName + ";initial catalog=" + pSqlToken.Account;
            SqlConnection connection        = new SqlConnection(connection_string);

            if (connection.State != ConnectionState.Open)
            {
                connection.Open();
            }

            // CHECK if the pOctoLogin/pOctoPass is a valid octo Account
            string     sqlText = "select * from dbo.Users where user_name =@username and user_pass =@password ";
            SqlCommand command = new SqlCommand(sqlText, connection);

            command.Parameters.Add("username", SqlDbType.NVarChar);
            command.Parameters["username"].Value = pOctoLogin;
            command.Parameters.Add("password", SqlDbType.NVarChar);
            command.Parameters["password"].Value = pOctoPass;
            try
            {
                valid = int.Parse(command.ExecuteScalar().ToString());
            }
            catch
            {
                return(false);
            }
            return(true);
        }
Exemplo n.º 7
0
        public string GetAuthentification(string pOctoLogin, string pOctoPass, string pOctoAccount, string pComputerName, string pLoginName)
        {
            Log.RemotingServiceLogger.DebugFormat("Call of get_authentification with login : {0}, pass : {1}, account : {2}", pOctoLogin, pOctoPass, pOctoAccount);
            Log.RemotingServiceLogger.DebugFormat(" login : {0}, pass : {1}, server : {2}", RemoteServerSettings.GetSettings().LoginName, RemoteServerSettings.GetSettings().Password, RemoteServerSettings.GetSettings().ServerName);

            string md5String = "";
            Token  token     = _getTokenByAccountName(pOctoAccount);
            UserRemotingContext connectionManager = new UserRemotingContext();

            if (_checkAccount(token, pOctoLogin, pOctoPass) == false)
            {
                // Throw exeption
                // FIXME
                Log.RemotingServiceLogger.Error("Les User/Pass octo donn�e ne sont pas valide");
                throw new Exception("messageBoxUserPasswordIncorrect.Text");
            }

            // Generate the md5
            DateTime date = DateTime.Now;

            string ToHash = token.get_unique_string();

            ToHash += "|" + date.Minute;

            byte[]  data = new byte[ToHash.Length];
            Encoder enc  = Encoding.ASCII.GetEncoder();

            enc.GetBytes(ToHash.ToCharArray(), 0, ToHash.Length, data, 0, true);
            MD5 md5 = new MD5CryptoServiceProvider();

            byte[] result = md5.ComputeHash(data);
            md5String = BitConverter.ToString(result).Replace("-", "").ToLower();


            string connectionString = "user id=" + token.Login + ";password="******";server=" +
                                      RemoteServerSettings.GetSettings().ServerName + ";initial catalog=" + token.Account;

            Log.RemotingServiceLogger.DebugFormat("Connection String {0}", connectionString);
            SqlConnection connection          = new SqlConnection(connectionString);
            SqlConnection secondaryConnection = new SqlConnection(connectionString);

            connectionManager.Token               = token;
            connectionManager.Connection          = connection;
            connectionManager.SecondaryConnection = secondaryConnection;

            if (account_table.Contains(md5String) == false)
            {
                Log.RemotingServiceLogger.DebugFormat("The account Dictionary doesnt contain this md5 : {0}", md5String);
                account_table[md5String] = connectionManager;
            }

            // Set the connection in the connectionManager
            Log.RemotingServiceLogger.DebugFormat("ConnectionString: {0}", connection.ConnectionString);
            this.SetConnection(connection);
            //OpenCBS.DatabaseConnection.ConnectionManager.GetInstance().SetConnection(connection);

            Log.RemotingServiceUsersLogger.InfoFormat(@"[CONNECTION {3}\{4}] Users, branch name:{0} login:{1}, connected \n \t Connection string :{2}", pOctoAccount, pOctoLogin, connectionString, pComputerName, pLoginName);
            Log.RemotingServiceLogger.InfoFormat(@"[CONNECTION {3}\{4}] Users, branch name:{0} login:{1}, connected \n \t Connection string :{2}", pOctoAccount, pOctoLogin, connectionString, pComputerName, pLoginName);

            return(md5String);
        }