Beispiel #1
0
        public ExternalClientEN RegisterExternalClient(int pCountryID, string pName, string pAlias, string pDescription, string pPassword, ref string oApiKey)
        {
            ExternalClientEN client = new ExternalClientEN();
            int externalClientID    = 0;
            var now = DateTime.Now;

            try
            {
                client.Active           = true;
                client.Alias            = pAlias;
                client.AssignedPassword = pPassword;
                client.CountryID        = pCountryID;
                client.Description      = pDescription;
                client.GUID             = Guid.NewGuid().ToString().ToUpper();
                client.Name             = pName;
                client.RegDate          = now.Date;

                externalClientID = clientDAL.InsertExternalClient(client);

                if (externalClientID > 0)
                {
                    oApiKey = jwt.encodeClientKey(client);
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.InnerException);
                EventViewerLoggerBL.LogError("RegisterExternalClient: " + ex.Message);
            }

            return(client);
        }
Beispiel #2
0
        public ExternalClientEN decodeClientKey(String clientKey)
        {
            ExternalClientEN client = new ExternalClientEN();

            try
            {
                byte[] secretKey = Encoding.ASCII.GetBytes(input);
                client = Jose.JWT.Decode <ExternalClientEN>(clientKey, secretKey);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.InnerException);
                EventViewerLoggerBL.LogError("decodeClientKey: " + ex.Message);
            }
            return(client);
        }
Beispiel #3
0
        public String encodeClientKey(ExternalClientEN pClient)
        {
            string clientKey;

            byte[] secretKey = Encoding.ASCII.GetBytes(input);

            try
            {
                clientKey = Jose.JWT.Encode(pClient, secretKey, JwsAlgorithm.HS256);
            }
            catch (Exception)
            {
                throw;
            }
            return(clientKey);
        }
Beispiel #4
0
        public String CreateClientKey(ExternalClientEN pClient)
        {
            String clientKey = "";

            try
            {
                clientKey = jwt.encodeClientKey(pClient);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.InnerException);
                EventViewerLoggerBL.LogError(ex.Message);
            }

            return(clientKey);
        }
Beispiel #5
0
        public ExternalClientEN VerifyExternalClient(IEnumerable <String> pClientKey)
        {
            ExternalClientEN client = null;

            try
            {
                var docodedKey = jwt.decodeClientKey(pClientKey.First().ToString());
                client = clientDAL.AuthenticateClient(docodedKey.GUID, docodedKey.AssignedPassword, docodedKey.RegDate);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.InnerException);
                EventViewerLoggerBL.LogError(ex.Message);
            }

            return(client);
        }
Beispiel #6
0
        public int InsertExternalClient(ExternalClientEN pClient)
        {
            int clientID = default(int);

            try
            {
                connection.Cnn.Open();
                clientID = connection.Cnn.Insert(pClient) ?? default(int);
            }
            catch (Exception ex)
            {
                Console.WriteLine("ExternalClientDAL: " + ex.Message);
                EventViewerLoggerDAL.LogError(ex.Message);
            }
            finally
            {
                connection.Cnn.Close();
            }

            return(clientID);
        }
Beispiel #7
0
        public ExternalClientEN AuthenticateClient(string pGuid, string pPassword, DateTime pRegistrationDate)
        {
            ExternalClientEN client = new ExternalClientEN();

            try
            {
                connection.Cnn.Open();
                client = connection.Cnn.Query <ExternalClientEN>("SpVerifyExternalClient", new { guid = pGuid, password = pPassword, date = pRegistrationDate.Date },
                                                                 commandType: CommandType.StoredProcedure).FirstOrDefault();
            }
            catch (Exception ex)
            {
                client = null;
                Console.WriteLine("ExternalClientDAL: " + ex.Message);
                EventViewerLoggerDAL.LogError(ex.Message);
            }
            finally
            {
                connection.Cnn.Close();
            }

            return(client);
        }