adfs 2.0 SAML登录我的原生移动应用程序

时间:2017-08-21 08:54:25

标签: mobile native adfs2.0

我想在我的Android应用中使用SAML进行有效的ADFS 2.0身份验证? (事实上​​我需要android和iOs)

为了提供透视图,我们的应用程序使用链接https://sts.mycompany.com/adfs/ls/Idpinitiatedsignon.aspx?logintoRP=https://mydemo.azurewebsites.net/通过ADFS 2.0进行身份验证。这实际上是由adfs服务器提供的html页面,用于提供凭据,提交后我们解密服务器响应以收集SAML令牌以发送到我们的Web服务。我们的Web服务有一种方法可以使用ADFS对saml令牌进行身份验证,然后为ios app提供适当的响应。如果我们的服务提供ios app 401未授权状态,我们会提示用户使用webview重新登录。大多数情况下,这发生在用户更改密码时。这有效,但这是正确的方法吗?我们尝试使用自定义本机登录来执行此操作,但adfs服务器未提供SAML令牌,当我们询问专家时,我们认为ADFS登录呈现机制不应被篡改。

问题是,html页面不是一个很棒的用户体验。 iOS / Android邮件应用程序连接到Office 365邮件(可能是MS Exchange)并要求使用本机UI登录,并要求在特定时间间隔内重新登录,从而提供流畅无缝的体验。在我们的场景中是否可以实现相同的目标?我的假设是Mail app通过使用交换协议连接到Exchange服务器。如果Exchange绑定到ADFS,则在Exchange Server和ADFS之间发生绑定/身份验证。我的假设是否正确?

我们的限制是我们希望使用ADFS 2.0&仅限SAML。

To Summeraize,问题陈述是:

与其改进当前的HTML登录表单的目的是尝试提供一个集成登录,其中移动应用程序预填充用户电子邮件,仅用于每40天重置一次密码,这就是iPhone / Android电子邮件的工作原理在O365上,我们正在寻找一种类似的方法来实现连贯一致的无缝用户体验

T&安培; R

<磷>氮

1 个答案:

答案 0 :(得分:-1)

问题是您使用的是ADFS 2.0。

另外,为什么必须是SAML?

使用ADFS 3.0(在有限范围内)和ADFS 4.0,您可以通过ADAL使用OpenID Connect / OAuth,这将为您提供所需的体验。

使用ADFS 2.0,唯一的其他验证方式是通过WS-Fed活动配置文件,即WCF。