Example #1
0
        //Callback url from TPA login
        public ActionResult LoginCallback(string token)
        {
            var tokenKey = new TokenKey(token, Constants.TpaAccessKey);

            var result = IdentityManager.TokenSignin(Constants.WebServiceUrl, tokenKey);

            Session["LoginFailureMessage"] = string.Empty;
            if (result.IsFailure)
            {
                Session["LoginFailureMessage"] = result.Error;
                return(RedirectToAction("LoginFailure", "Account"));
            }

            var identity = result.Value;

            if (identity == null)
            {
                throw new Exception("No identity returned from Token signin");
            }

            _membershipService.SyncClaims(identity);

            var landingPage = identity.GetClaimValue(ClaimTypes.Webpage);

            return(RedirectToAction(landingPage, "Home"));
        }
Example #2
0
    public override int GetHashCode()
    {
        int hashcode = 157;

        unchecked {
            if (__isset.tokenKey)
            {
                hashcode = (hashcode * 397) + TokenKey.GetHashCode();
            }
            if (__isset.expirationTime)
            {
                hashcode = (hashcode * 397) + ExpirationTime.GetHashCode();
            }
            if (__isset.applicationType)
            {
                hashcode = (hashcode * 397) + ApplicationType.GetHashCode();
            }
            if (__isset.systemName)
            {
                hashcode = (hashcode * 397) + SystemName.GetHashCode();
            }
            if (__isset.accessLocation)
            {
                hashcode = (hashcode * 397) + AccessLocation.GetHashCode();
            }
        }
        return(hashcode);
    }
Example #3
0
        public OAuthParameters(
            ConsumerKey key,
            TokenKey tokenKey,
            string signatureMethod,
            TimestampSequence timestamps,
            NonceSequence nonces,
            string signature,
            string version,
            string verifier = null,
            string session  = null,
            bool renewToken = false
            )
        {
            _key             = key;
            _tokenKey        = tokenKey;
            _signatureMethod = signatureMethod;
            _signature       = signature;
            _session         = session;
            _verifier        = verifier;
            _version         = version ?? "1.0";

            _nonce      = nonces.Next();
            _timestamp  = timestamps.Next();
            _renewToken = renewToken;
        }
Example #4
0
        public void DeleteToken(TokenKey token)
        {
            if (_tokens.Remove(token))
            {
                // Reads the savefile line by line, omits, this TokenKey, then rewrites file
                IsolatedStorageFile isoStore = IsolatedStorageFile.GetUserStoreForAssembly();
                StringBuilder       file     = new StringBuilder();
                using (var isoStream = new IsolatedStorageFileStream(_tokenPath, FileMode.Open, FileAccess.Read, isoStore))
                {
                    using (var reader = new StreamReader(isoStream))
                    {
                        string line;
                        while ((line = reader.ReadLine()) != null)
                        {
                            string user = line.Split('$')[1];
                            if (user != token.UserId)
                            {
                                file.Append(line);
                            }
                        }
                    }
                }

                using (var isoStream = new IsolatedStorageFileStream(_tokenPath, FileMode.Create, FileAccess.Write, isoStore))
                {
                    using (var writer = new StreamWriter(isoStream))
                    {
                        writer.Write(file.ToString());
                    }
                }
            }
        }
Example #5
0
	    public OAuthParameters(
			ConsumerKey key, 
			TokenKey tokenKey, 
			string signatureMethod, 
			TimestampSequence timestamps, 
			NonceSequence nonces, 
			string signature, 
			string version,
            string verifier = null,
            string session = null,
            string callback = null
		)
        {
    	    _key = key;
            _tokenKey = tokenKey;
            _signatureMethod = signatureMethod;
    	    _signature = signature;
	        _session = session;
	        _verifier = verifier;
	        _version = version ?? "1.0";

    	    _nonce = nonces.Next();
    	    _timestamp = timestamps.Next();
            _callback = callback;
        }
Example #6
0
    public override string ToString()
    {
        var  sb      = new StringBuilder("LoginSession(");
        bool __first = true;

        if (TokenKey != null && __isset.tokenKey)
        {
            if (!__first)
            {
                sb.Append(", ");
            }
            __first = false;
            sb.Append("TokenKey: ");
            TokenKey.ToString(sb);
        }
        if (__isset.expirationTime)
        {
            if (!__first)
            {
                sb.Append(", ");
            }
            __first = false;
            sb.Append("ExpirationTime: ");
            ExpirationTime.ToString(sb);
        }
        if (__isset.applicationType)
        {
            if (!__first)
            {
                sb.Append(", ");
            }
            __first = false;
            sb.Append("ApplicationType: ");
            ApplicationType.ToString(sb);
        }
        if (SystemName != null && __isset.systemName)
        {
            if (!__first)
            {
                sb.Append(", ");
            }
            __first = false;
            sb.Append("SystemName: ");
            SystemName.ToString(sb);
        }
        if (AccessLocation != null && __isset.accessLocation)
        {
            if (!__first)
            {
                sb.Append(", ");
            }
            __first = false;
            sb.Append("AccessLocation: ");
            AccessLocation.ToString(sb);
        }
        sb.Append(")");
        return(sb.ToString());
    }
Example #7
0
        public bool IsLicensed(TokenKey key)
        {
            var licSvc = _sb.LicenseV2();
            var licSR  = licSvc.IsLicensed(new LicenseRequest
            {
                Key = key
            });

            return(licSR.Result);
        }
Example #8
0
 public void SpawnToken(Transform origin, TokenKey key)
 {
     if (_pools[key] != null)
     {
         var token = _pools[key].GetToken();
         token.transform.position = origin.position;
         token.transform.rotation = origin.rotation;
         token.SetState(TokenState.Activate);
     }
 }
        public void AuthenticateTokenKey()
        {
            IToken user = new TokenKey()
            {
                Token = "helloworld123key"
            };
            var result = Authentication.Authentiacte(user, "tokenkey-", "localhost", AddRole);

            Assert.IsTrue(result.Token.Length > 3);
        }
Example #10
0
 public void SpawnToken(Transform origin, TokenKey key, float charge)
 {
     if (_pools[key] != null)
     {
         var token = _pools[key].GetToken();
         token.transform.position = origin.position;
         token.transform.rotation = origin.rotation;
         token.Fire(charge);
     }
 }
        public IActionResult ValidateToken([FromBody] TokenKey token)
        {
            if (string.IsNullOrEmpty(token.Token))
            {
                return(BadRequest());
            }
            var isValid = jwtTokenService.ValidateToken(token.Token);

            return(Ok(new { isValid }));
        }
Example #12
0
        public string GetToken(TokenKey tok)
        {
            string tokenKey = tokens[tok];

            using (var fs = System.IO.File.OpenRead(_secretsUri))
                using (var sReader = new System.IO.StreamReader(fs))
                {
                    var jobj = JObject.Parse(sReader.ReadToEnd());
                    return(jobj.SelectToken(tokenKey).Value <String>());
                }
        }
        public void UnLockAccount()
        {
            IToken token = new TokenKey()
            {
                Token      = "helloworld123key",
                LockOut    = 3,
                LockExpire = DateTime.Now.AddMinutes(-30)
            };

            Sql.AlterDataQuery("update tokenkey set lockout = 3, lockexpire = @LockExpire Where token = @Token", token);
            var result = Authentication.Authentiacte(token, "user", "localhost", null);

            Assert.IsTrue(result.Token.Length > 10);
        }
Example #14
0
        public void CreateToken()
        {
            var token = new TokenKey()
            {
                Token = CreateRefreshToken()
            };

            manger.AddTokenKey(token);
            var table  = Sql.SelectQuery("select * from gettoken(@Token)", token);
            var result = ObjectConverter.ConvertDataTableRowToObject <TokenKey>(table, 0);

            Assert.AreEqual(token.Token, result.Token);
            Sql.AlterDataQuery("delete from tokenkey where token = @Token", token);
        }
        public FluTeCorePrototype AttachProcessingStep(string token, IProcessingStep step)
        {
            var key = new TokenKey(token, TokenType.Injection);

            if (!Tokens.ContainsKey(key))
            {
                throw new KeyNotFoundException("Could not find an injection token with the specified name.");
            }
            else
            {
                var tok = (IUnresolvedToken)Tokens[key];
                tok = tok.AttachStep(step);
                return(new FluTeCorePrototype(Tokens.Set(key, tok), TokenSequence, Inputs, PostProcessingQueue));
            }
        }
Example #16
0
        public void LoginWithTokenAsync(TokenKey user)
        {
            string error;

            ConnectedServer = user.Server;
            if (tokens.ContainsKey(user))
            {
                CurrentUser = user;
                error       = null;
            }
            else
            {
                error = "Invalid Password";
            }

            LoginCompleted?.Invoke(error);
        }
Example #17
0
        private void SaveToken(MatrixLoginResponse login, string path, IsolatedStorageFile store)
        {
            var tokenKey = new TokenKey(login.user_id, _cp.Url);

            if (_tokens.ContainsKey(tokenKey))      // Invariant: All tokens in file are loaded in dictionary -> this avoids duplicate lines in file
            {
                return;                             // Invariant: All tokens added to dictionary are immediately saved to file -> this doesn't prevent unsaved tokens
            }
            _tokens[tokenKey] = login.access_token;
            using (var isoStream = new IsolatedStorageFileStream(path, FileMode.Append, FileAccess.Write, store))
            {
                using (var writer = new StreamWriter(isoStream))
                {
                    writer.WriteLine($"{login.access_token}${tokenKey.UserId}${tokenKey.Server}");
                }
            }
        }
 public void AccountIsBlocked()
 {
     try
     {
         IToken token = new TokenKey()
         {
             Token   = "helloworld123key",
             LockOut = 3,
         };
         Sql.AlterDataQuery("update tokenkey set lockout = @LockOut, lockexpire = now() Where token = @Token", token);
         var result = Authentication.Authentiacte(token, "user", "localhost", null);
         Assert.IsTrue(result.Token.Length > 3);
     }
     catch (Exception error)
     {
         Assert.AreEqual("Account has been locked please try again later", error.Message);
     }
 }
 public void ReauthenticateWithRefreshToken()
 {
     try
     {
         IToken token = new TokenKey()
         {
             Token = "helloworld123key",
         };
         var auth   = Authentication.Authentiacte(token, "user", "localhost", null);
         var table  = Sql.SelectQuery("select * from getrefreshtoken(@RefreshToken)", auth);
         var result = Authentication.RefreshToken(auth.RefreshToken, "user", "localhost", null);
         Assert.IsTrue(result.Token.Length > 3);
     }
     catch
     {
         throw;
     }
 }
        public void ReturnToStartFromNewLogin()
        {
            var mock = new MockLoginModel();
            var sm   = new StartViewModel(mock);

            sm.SwitchedToThis();
            var newToken = new TokenKey(Utils.OtherUser.Item1, "localserver");

            sm.NewLoginButton_Click.Execute();
            mock.tokens[newToken] = Utils.OtherUser.Item1;
            sm.SwitchedToThis();

            Assert.True(sm.NewLoginButton_Click.CanExecute());
            Assert.Null(sm.SelectedUser);
            Assert.True(sm.LoginAllowed);
            Assert.True(string.IsNullOrEmpty(sm.ErrorMessage));
            CollectionAssert.AreEquivalent(mock.tokens.Keys.ToArray(), sm.SavedUsers.Select(x => x.Login).ToArray());
        }
Example #21
0
        public OAuthParameters(
            ConsumerKey key,
            TokenKey tokenKey,
            string signatureMethod,
            TimestampSequence timestamps,
            NonceSequence nonces,
            string signature,
            string version
            )
        {
            _key             = key;
            _tokenKey        = tokenKey;
            _signatureMethod = signatureMethod;
            _signature       = signature;
            _version         = version ?? "1.0";

            _nonce     = nonces.Next();
            _timestamp = timestamps.Next();
        }
Example #22
0
        public OAuthParameters(
			ConsumerKey key, 
			TokenKey tokenKey, 
			string signatureMethod, 
			TimestampSequence timestamps, 
			NonceSequence nonces, 
			string signature, 
			string version
		)
        {
            _key = key;
            _tokenKey = tokenKey;
            _signatureMethod = signatureMethod;
            _signature = signature;
            _version = version ?? "1.0";

            _nonce = nonces.Next();
            _timestamp = timestamps.Next();
        }
Example #23
0
 private void LoadTokens(string path, IsolatedStorageFile store, Dictionary <TokenKey, string> tokens)
 {
     if (store.FileExists(path))
     {
         using (var isoStream = new IsolatedStorageFileStream(path, FileMode.Open, FileAccess.Read, store))
         {
             using (var reader = new StreamReader(isoStream))
             {
                 string line;
                 while ((line = reader.ReadLine()) != null)
                 {
                     string[] values = line.Split('$');
                     var      tK     = new TokenKey(values[1], values[2]);
                     tokens[tK] = values[0];
                 }
             }
         }
     }
 }
Example #24
0
        public void AddRoleToToken()
        {
            var token = new TokenKey()
            {
                Token = "helloworld123key"
            };

            var resultToken   = Sql.SelectQuery("select * from gettoken(@Token)", token);
            var selectedToken = ObjectConverter.ConvertDataTableRowToObject <TokenKey>(resultToken, 0);

            var Roles    = Sql.SelectQuery("select * from roles", token);
            var RoleList = ObjectConverter.ConvertDataTableToList <Role>(Roles);

            manger.addRoleToTokenKey(selectedToken.Id, RoleList[0].Id);
            var selected = new { TokenId = selectedToken.Id, RoleId = RoleList[0].Id };
            var result   = Sql.SelectQuery("select * from token_roles where tokenid = @TokenId and rolesid = @RoleId", selected);

            Assert.IsTrue("1" == result.Rows[0]["tokenid"].ToString() && "1" == result.Rows[0]["rolesid"].ToString());
        }
            /// <summary>
            /// 由輸入文字產生Google翻譯Token
            /// 本函數請參閱translate_m_zh-TW.js
            /// 標示點: // @2
            /// 函數名: fo
            /// 備註: 合併為完整的fo
            /// </summary>
            /// <param name="source">輸入文字</param>
            /// <returns>Token值</returns>
            public virtual async Task <string> GenerateAsync(string source)
            {
                if (IsTokenKeyObsolete)
                {
                    try
                    {
                        // 得使用 ConfigureAwait(false) 不然線程會鎖死
                        CurrentKey = await GetNewTokenKeyAsync().ConfigureAwait(false);
                    }
                    catch (TokenKeyParseException)
                    {
                        throw new NotSupportedException("這個方法已經失效 or 有什麼其他東西出錯");
                    }
                }

                long time = DecryptFirstFo(source);

                return(time.ToString() + '.' + (time ^ CurrentKey.Time));
            }
Example #26
0
        public void RemoveRoleFromToken()
        {
            var token = new TokenKey()
            {
                Token = "helloworld123key"
            };

            var resultToken   = Sql.SelectQuery("select * from gettoken(@Token)", token);
            var selectedToken = ObjectConverter.ConvertDataTableRowToObject <UserAccount>(resultToken, 0);

            var Roles    = Sql.SelectQuery("select * from roles", token);
            var RoleList = ObjectConverter.ConvertDataTableToList <Role>(Roles);

            manger.RemoveRolefromTokenKey(selectedToken.Id, RoleList[0].Id);

            var selected = new { TokenId = selectedToken.Id, RoleId = RoleList[0].Id };
            var result   = Sql.SelectQuery("select * from token_roles where tokenid = @TokenId and rolesid = @RoleId", selected);

            Assert.IsTrue(result.Rows.Count == 0);
        }
Example #27
0
        public void LoginAsync(string username, string password, bool saveToken)
        {
            string error;

            CheckServer();
            if ((username == Utils.SavedUser.Item1 && password == Utils.SavedUser.Item2) ||
                (username == Utils.OtherUser.Item1 && password == Utils.OtherUser.Item2))
            {
                error       = null;
                CurrentUser = new TokenKey(username, "localserver");
                if (saveToken)
                {
                    tokens[new TokenKey(username, password)] = username;
                }
            }
            else
            {
                error = "Invalid password";
            }

            LoginCompleted?.Invoke(error);
        }
Example #28
0
        public void AddDublicateRoleToToken()
        {
            try
            {
                var token = new TokenKey()
                {
                    Token = "helloworld123key"
                };

                var resultUser   = Sql.SelectQuery("select * from gettoken(@Token)", token);
                var selectedUser = ObjectConverter.ConvertDataTableRowToObject <UserAccount>(resultUser, 0);

                var Roles    = Sql.SelectQuery("select * from roles", token);
                var RoleList = ObjectConverter.ConvertDataTableToList <Role>(Roles);

                manger.addRoleToTokenKey(selectedUser.Id, RoleList[0].Id);
            }
            catch (Exception error)
            {
                Assert.AreEqual("23505: duplicate key value violates unique constraint \"token_role\"", error.Message);
            }
        }
 public void TestUsedRefreshToken()
 {
     try
     {
         IToken token = new TokenKey()
         {
             Token = "helloworld123key",
         };
         var auth           = Authentication.Authentiacte(token, "user", "localhost", null);
         var table          = Sql.SelectQuery("select * from getrefreshtoken(@RefreshToken)", auth);
         var LockedRefToken = new RefreshToken()
         {
             Token = auth.RefreshToken
         };
         Sql.AlterDataQuery("update refreshtoken set used = true where token = @Token", LockedRefToken);
         var result = Authentication.RefreshToken(auth.RefreshToken, "user", "localhost", null);
         Assert.IsFalse(result.Token.Length > 3);
     }
     catch (Exception error)
     {
         Assert.AreEqual("Warning: The Refreshtoken has already been used", error.Message);
     }
 }
Example #30
0
        public string LoginWithToken(TokenKey user)
        {
            string error = null;

            if (!_tokens.ContainsKey(user))
            {
                return("No login token exists for this user.");
            }
            if (_cp.Url != user.Server)
            {
                error = ConnectToServer(user.Server);
                if (!string.IsNullOrEmpty(error))
                {
                    return(error);
                }
            }

            try
            {
                _cp.Client.UseExistingToken(user.UserId, _tokens[user]);
                _cp.Client.StartSync();
            }
            catch (MatrixException e)
            {
                return(e.Message);
            }
            catch (AggregateException e)
            {
                if (!IsWebException(e))
                {
                    throw e;
                }
                return("Server connection failed.");
            }

            return(error);
        }
Example #31
0
 /// <summary>
 ///   Initializes a new instance of the <see cref = "TokenReference" /> struct.
 /// </summary>
 /// <param name = "key">The key.</param>
 public TokenReference(TokenKey key)
 {
     this.key = key;
 }
Example #32
0
 public override int GetHashCode()
 {
     return(TokenKey.GetHashCode() + ExpirationTime.GetHashCode());
 }