gpt4 book ai didi

silverlight - 如何将浏览器内 silverlight 客户端连接到 ACS - Azure - WIF - Entity Framework (公共(public)和私有(private)数据库模型)

转载 作者:行者123 更新时间:2023-12-03 01:57:42 26 4
gpt4 key购买 nike

亲爱的贡献者,您好!

我又陷入停滞了,我已经研究了一个教程或一些关于如何改编这个精彩教程的方向:

http://msdn.microsoft.com/en-us/WAZPlatformTrainingCourse_ACSAndWindowsPhone7

浏览器内的 silverlight 应用程序而不是 Windows Phone ?我想保留当前的模型,包括公共(public)和私有(private)数据库,并且最好将 silverlight 应用程序插入到 azure 社交游戏包中:

https://github.com/WindowsAzure-Toolkits/wa-toolkit-games

它使用类似的 ACS 模式,我需要的指导是关于 Oauth2 的客户端处理。

预先感谢您在此事上提供的任何帮助。

最佳答案

如果它是浏览器内的 silverlight 应用程序,为什么不将其视为常规网站呢?流程将类似于

  1. 用户浏览您的应用
  2. 在发送 XAP 之前,您的网站会显示身份提供商列表。用户选择一个并被重定向以登录。
  3. 用户登录后,您将获得一个发布到您的应用(即社交游戏工具包)的 token 。好消息是,Social Gaming Toolkit 已经在网站上提供了与 ACS 的集成,因此无需做太多工作。用户将获得由 Windows Identity Foundation 生成的 cookie,其中包含声明(目前不涉及 silverlight)。
  4. 现在您发送 XAP,Silverlight 应用程序就会加载
  5. 从现在起,从 XAP 向您的应用(将具有 Social Games Toolkit)发出的每个请求都将填充主体,因为每个请求中都会发送 WIF cookie。

如果您想稍微改变一下用户体验,而不是在常规 HTML/asp.net 页面中显示身份提供商列表,您希望从 Silverlight 应用程序中执行此操作(如 Windows Phone 实验室所示)。然后,您只需使用 ACS JSON 端点,该端点列出了 Silverlight 应用程序中的身份提供商。

该工具包已经做到了这一点,您可以从以下内容中提取基本想法:

https://github.com/WindowsAzure-Toolkits/wa-toolkit-games/blob/master/code/SocialGames.Web/Services/AuthService.cs#L29

获取 JSON 格式的身份提供者列表的请求如下所示:

https://your_servicenamespace.accesscontrol.windows.net/v2/metadata/IdentityProviders.js?protocol=wsfederation&realm=your_application_realm&version=1.0&context=some_contextual_data_youwanttokeepacrossredirects

最后,这个实验室也应该对您有所帮助

http://msdn.microsoft.com/en-us/IdentityTrainingCourse_SilverligthAndIdentity2010

FWIW,Windows Phone 的工作方式是使用 ACS 中的 JavaScript 通知端点,这与我上面描述的不同。

流程是这样的

  1. 手机显示登录选项(Facebook、LiveID 等)
  2. 用户点击其中一个
  3. 用户被重定向到 ACS,然后重定向到所选的身份提供商
  4. 用户登录,某种 token 会发送回 ACS(取决于身份提供商)
  5. 此时 ACS 将使用一些 JavaScript 呈现 HTML 页面。这将指示浏览器(托管在 Windows Phone 中)发送带有有效负载(本例中为 token )的外部信号。
    window.external.Notify('THE_TOKEN');
  6. 手机应用将检测通知并获取 token

我不确定 JavaScript 通知机制如何在 Silverlight 浏览器内应用程序上工作,因为您已经在浏览器中了。但如果您尝试这样做,请随时通知我们。

马蒂亚斯

关于silverlight - 如何将浏览器内 silverlight 客户端连接到 ACS - Azure - WIF - Entity Framework (公共(public)和私有(private)数据库模型),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10866200/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com