public bool IsValid(string account, string password) { if (this.profile == null) { throw new ArgumentNullException(); } if (this.rsaToken == null) { throw new ArgumentNullException(); } // 根據 account 取得自訂密碼 var profileDao = new ProfileDao(); //var passwordFromDao = profileDao.GetPassword(account); var passwordFromDao = this.profile.GetPassword(account); // 根據 account 取得 RSA token 目前的亂數 var rsaToken = new RsaTokenDao(); //var randomCode = rsaToken.GetRandom(account); var randomCode = this.rsaToken.GetRandom(account); // 驗證傳入的 password 是否等於自訂密碼 + RSA token亂數 var validPassword = passwordFromDao + randomCode; var isValid = password == validPassword; return isValid; }
public bool IsValid(string account, string password) { if (this.profile == null) { throw new ArgumentNullException(); } if (this.rsaToken == null) { throw new ArgumentNullException(); } // 根據 account 取得自訂密碼 var profileDao = new ProfileDao(); //var passwordFromDao = profileDao.GetPassword(account); var passwordFromDao = this.profile.GetPassword(account); // 根據 account 取得 RSA token 目前的亂數 var rsaToken = new RsaTokenDao(); //var randomCode = rsaToken.GetRandom(account); var randomCode = this.rsaToken.GetRandom(account); // 驗證傳入的 password 是否等於自訂密碼 + RSA token亂數 var validPassword = passwordFromDao + randomCode; var isValid = password == validPassword; return(isValid); }
private static AuthenticationService GetAuthenticationService() { var profile = new ProfileDao(); var token = new RsaTokenDao(); // 你可以隨時抽換 log 的紀錄方式,只需要實作 ILog var log = GetLog(); var result = new AuthenticationService(profile, token, log); return result; }
public bool IsValid(string account, string password) { // 根據 account 取得自訂密碼 var profileDao = new ProfileDao(); var passwordFromDao = profileDao.GetPassword(account); // 根據 account 取得 RSA token 目前的亂數 var rsaToken = new RsaTokenDao(); var randomCode = rsaToken.GetRandom(account); // 驗證傳入的 password 是否等於自訂密碼 + RSA token亂數 var validPassword = passwordFromDao + randomCode; var isValid = password == validPassword; return isValid; }
public bool IsValid(string account, string password) { // 根據 account 取得自訂密碼 var profileDao = new ProfileDao(); var passwordFromDao = profileDao.GetPassword(account); // 根據 account 取得 RSA token 目前的亂數 var rsaToken = new RsaTokenDao(); var randomCode = rsaToken.GetRandom(account); // 驗證傳入的 password 是否等於自訂密碼 + RSA token亂數 var validPassword = passwordFromDao + randomCode; var isValid = password == validPassword; return(isValid); }
public bool IsValid(string account, string password) { // 根據 account 取得設定時間 var profileDao = new ProfileDao(); var registerMinutes = profileDao.GetRegisterTimeInMinutes(account); // 根據 registerMinutes 取得 RSA token 目前的亂數 var rsaToken = new RsaTokenDao(); var otp = rsaToken.GetRandom(registerMinutes); // 驗證傳入的 password 是否等於 otp var isValid = password == otp; if (isValid) { return(true); } else { return(false); } }
protected virtual ProfileDao GetProfileDao() { var profileDao = new ProfileDao(); return(profileDao); }
protected virtual ProfileDao GetProfileDao() { var profileDao = new ProfileDao(); return profileDao; }