public static bool IsUndesired(this AuthenticatorStatus status) { return(status is AuthenticatorStatus.ATTESTATION_KEY_COMPROMISE or AuthenticatorStatus.USER_VERIFICATION_BYPASS or AuthenticatorStatus.USER_KEY_REMOTE_COMPROMISE or AuthenticatorStatus.USER_KEY_PHYSICAL_COMPROMISE or AuthenticatorStatus.REVOKED); }
private void LoginResponse(AuthenticatorStatus status, LocalUser user) { { Device.BeginInvokeOnMainThread(() => { if (status == AuthenticatorStatus.Success) { LocalUserManager.LocalUser = user; Application.Current.Properties["PrivateKey"] = user.PrivateKey; Application.Current.SavePropertiesAsync(); var listGetter = KarmaBadgeSystemManager.NewKarmaBadgeListGetter(); listGetter.Result += (_status, badges) => { Device.BeginInvokeOnMainThread(() => { if (_status == KarmaBadgeListGetStatus.Success) { KarmaBadgeFetcher.KarmaBadges = badges; App.Current.MainPage = new Views.MainPage(); } else { UsernameEntry.IsEnabled = true; PasswordEntry.IsEnabled = true; StatusLabel.IsVisible = true; StatusLabel.Text = LocalizeStatus(_status); LoadingIndicator.IsRunning = false; LoginButton.IsVisible = true; } }); }; listGetter.Get(); } else { UsernameEntry.IsEnabled = true; PasswordEntry.IsEnabled = true; StatusLabel.IsVisible = true; StatusLabel.Text = LocalizeStatus(status); LoadingIndicator.IsRunning = false; LoginButton.IsVisible = true; } }); } }
public void PrivateKeyTest() { LocalUser user = Login(); bool done = false; LocalUser user1 = null; AuthenticatorStatus status = AuthenticatorStatus.UnknownError; var auth = AuthenticationSystemManager.NewAuthenticator(); auth.Result += (_status, _user) => { status = _status; user1 = _user; done = true; }; auth.Login(user.PrivateKey); while (!done) { } Assert.AreEqual(status, AuthenticatorStatus.Success); Assert.AreEqual(user.PrivateKey, user1.PrivateKey); Assert.AreEqual(user.Username, user1.Username); }
public static LocalUser Login(string username = "******", string password = "******") { AuthenticatorStatus status = AuthenticatorStatus.UnknownError; LocalUser user = null; bool done = false; var auth = AuthenticationSystemManager.NewAuthenticator(); auth.Result += (_status, _user) => { status = _status; user = _user; done = true; }; auth.Login(username, password); while (!done) { } Assert.AreEqual(status, AuthenticatorStatus.Success); Assert.AreNotEqual(user, null); Assert.AreEqual(user.Username, username); LocalUserManager.LocalUser = user; return(user); }