public string GetSalt(string username, IScope context = null) { if (null == UserService) { return(null); } var user = UserService.GetUser(username); if (!StateChecker.IsSecureLogable(user)) { return(null); } return(SecureLogonService.GetSalt(user, context)); }
public IIdentity Logon(string username, SecureLogonInfo info, IScope context = null) { if (null == UserService) { return(null); } var user = UserService.GetUser(username); if (!StateChecker.IsSecureLogable(user)) { return(null); } var result = new Identity { Name = username, AuthenticationType = "secure" }; var state = StateChecker.GetActivityState(user); if (state != UserActivityState.Ok) { result.IsError = true; result.Error = new SecurityException(state.ToStr()); } else { try { SecureLogonService.CheckSecureInfo(info, user, context); result.IsAuthenticated = true; result.User = user; result.IsAdmin = user.IsAdmin; } catch (Exception e) { result.IsError = true; result.Error = e; } } return(result); }