0

我希望创建一个位于我们现有代码之上的 WCF(可能是 WebApi)Web 服务。最终,该服务将被外部客户使用,但我们将开始在我们自己的移动应用程序中使用它。

由于一些客户希望使用 Gmail 和 ADFS 身份验证,因此使用 Azure ACS 似乎很有意义(这是我们的 Web 服务托管的地方)。但是,我们暂时不需要多个提供程序,我们将从使用自定义 STS 开始,该 STS 根据我们现有的身份验证逻辑对用户进行身份验证。

我们已经有了使用 MVC Web 应用程序作为客户端的上述工作的粗略原型。

我的问题是如何将其与移动应用程序集成?看起来移动应用程序将使用 AppCelerator 编写,这意味着我需要使用 javascript 进行身份验证。我们只希望用户对我们的自定义 STS 进行身份验证,所以我需要使用 Active Authentication 吗?IE

  • 要求用户输入用户名和密码
  • 直接使用自定义 STS 进行身份验证并检索令牌
  • 将 STS 令牌传递给 ACS 并检索 ACS 令牌
  • 将 ACS 令牌传递给每个请求的 wcf 服务。

我想我的问题是:我是否在正确的轨道上,如果是这样,我将如何在 javascript 中实现这一目标?

4

2 回答 2

0

我认为可以通过 Https 请求发出 SAML。作为起点,我建议查看 Dominick Baier 的 Thinktecture IdentityServer 资源。这将有助于理解不同的策略以及如何使用 em(Github 上也有一些 WebApi 的好东西):http: //identityserver.codeplex.com/

于 2012-04-24T12:13:56.857 回答
0

如果您想支持移动设备,建议在您的 STS 中提供基于 Web 的登录界面。在大多数情况下,移动设备会在 Web 浏览器中导航到您的 STS 登录页面。在您的 STS 对用户进行身份验证后,它会向 ACS 发送声明。ACS 反过来使用 JavaScript 通知来通知主机应用程序。有关在 Windows Phone 中使用 ACS 的教程,您可以参考http://msdn.microsoft.com/en-us/WAZPlatformTrainingCourse_ACSAndWindowsPhone7 。类似的过程可以用于其他移动设备。希望这可以帮助。

于 2012-04-25T06:47:43.307 回答