如何在我的Xamarin.Forms项目中集成2因素身份验证?

时间:2016-08-17 13:19:24

标签: authentication xamarin

我是Xamarin移动应用程序开发的新手。我想在我的Xamarin.Forms项目中集成2因素身份验证。但我不知道该怎么做。有人能帮助我吗?

2 个答案:

答案 0 :(得分:0)

我知道可以轻松集成到Xamarin中的唯一解决方案是Azure Active Directory B2C。 https://azure.microsoft.com/en-us/services/active-directory-b2c/

实际上是客户身份和访问管理门户,带有身份管理(可扩展性,登录,注册,密码重置,2FA等)

答案 1 :(得分:0)

我可以建议以下解决方案:

  • Azure Active Directory作为目录和多重身份验证服务。您可以使用Azure AD帐户进行访问,或将Azure AD与企业Active Directory域与Active Directory联合身份验证服务集成。在这里,您可以获得帐户管理和多因素基础设施(电话注册,电话/短信服务和政策)
  • Active Directory Authentication Library(ADAL)在Xamarin Forms app中使用。
  • 在Xamarin.Forms应用程序中使用Dependency Service来定义身份验证界面,如:

    [assembly: Dependency(typeof(MFATestPCL.Droid.Helper.Authenticator))]
    namespace MFATestPCL.Droid.Helper
    
  • 使用程序集依赖关系元数据属性为每个平台(here is all details)提供实现:

    var auth = DependencyService.Get<IAuthenticator>();
    authResult = await auth.Authenticate(authority, graphResourceUri, clientId, returnUri);
    
  • 通过共享代码拨打电话:

    import matplotlib.pyplot as plt
    import numpy as np
    
    t = np.arange(0.0, 2.0, 0.01)
    s = 1 + np.sin(2*np.pi*t)
    plt.plot(t, s)
    
    plt.xlabel('time (s)')
    plt.ylabel('voltage (mV)')
    plt.title('About as simple as it gets, folks')
    plt.grid(True)
    plt.savefig("test.png")
    plt.show()
    

这是完整的GitHub sample Xamarin app repo with step-by-step guide of configuring Azure AD - 提供的iOS,Android和Windows 10 UWP实现。