将开发 Office 365 网站部署到 Microsoft Azure
开发 Web 应用程序的任何类型时,大部分开发是通过使用 http://localhost
在本地完成的。 一些项目使用本地资源或本地和远程资源的组合。 从本地开发环境获取这些项目涉及一些要执行的任务,例如更改数据库连接字符串、URL 和配置。
利用 Office 365 API 的 Web 项目也是相同的。 这些项目利用 Microsoft Azure Active Directory (Azure AD) 服务,以对应用程序进行身份验证,并获取 OAuth 2.0 访问令牌。 Web 应用程序使用这些令牌以通过 Office 365 API 进行身份验证。
本页面介绍了采用 Office 365 API 开发项目并将其发布到使用 Office 365、Azure AD 和 Azure 应用服务的 Web 应用功能完全托管于 Azure 中的工作示例所涉及的步骤。
从本地开发环境将 Office 365 API Web 应用程序部署到 Azure 需执行此页面所述的四个高级别步骤:
- 创建和配置 Web 应用。
- 配置 Azure AD 应用程序。
- 配置 ASP.NET 项目。
- 部署 Office 365 API ASP.NET Web 应用程序。
创建和配置 Web 应用
在此步骤中,将创建用于托管 Web 应用程序的 Web 应用。
转到 Azure 门户,并使用你的组织 ID 帐户登录。
登录后,在导航栏上选择“网站”。
在“网站”页上,选择该页左下角的页脚中的“新建”链接。
在显示的向导中,选择“快速创建”,在“URL”字段中输入网站的名称,然后选择“Web 托管计划”和“订阅”。
提示
请务必记录你创建的网站的名称,以备日后使用。
- 最后单击“创建网站”链接以创建网站。
Azure 需要一些时间来创建网站。 创建网站后,可以通过 Web 界面指定应用设置。 这将允许你通过网站 Web 管理界面替代项目的 web.config 文件内的任何 <appSettings>
,而无需为简单的 web.config 更改部署你的网站代码库。
选择刚刚在 Azure 门户内创建的网站。
单击顶部导航中的“配置”链接。
向下滚动到“应用设置”部分,并添加三个新条目:
- ida:ClientID
- ida:Password
- ida:TenantID
- 从工作项目的 web.config 文件复制相应值到 Azure 网站的这些设置值,如下图所示。
- 在页脚中,选择“保存”以保存更改。
此时,安装并配置了 Azure 网站以托管 Office 365 API Web 项目(在后续步骤中将对其进行部署)。
配置 Azure AD 应用程序
在此步骤中,将修改 Office 365 应用程序的开发和测试中使用的 Azure AD 应用程序。
转到 Azure 门户,并使用你的组织 ID 帐户登录。
登录后,在导航栏上选择“ACTIVE DIRECTORY”。
在“active directory”页面上,选择链接到 Office 365 租户的目录。
接下来,在顶部导航中选择“应用程序”。
在“属性”部分,更新登录 URL 以指向你创建的 Azure 网站的默认 URL。 请记录以使用与所有 Azure 网站一起提供的 HTTPS 端点。
在“单一登录”部分,更新应用 ID URI 以将该域用于 Azure 网站(如下图所示)。
接下来,更新回复 URL,这样,唯一列出的 URL 就是 Azure 网站的主页:
- 在页脚中,选择“保存”按钮以保存你的更改。
此时,配置了由 Office 365 API Web 项目使用的 Azure AD 应用程序,以使用新的 Azure 网站。
配置 ASP.NET 项目
在此步骤中,将应用程序中的 ASP.NET 项目配置为使用新的 Azure 网站。
对本指南的示例中所使用的示例应用程序无需进行额外的工作。 但是,该 Web 应用程序的确包含 web.config 文件内在开发过程中使用的 Azure AD 应用程序和 Azure AD 租户的设置。 某些开发人员可能会选择使用不同的 Azure AD 应用程序,甚至使用不同的 Azure 订阅,以用于他们的开发和生产实例。
在本页的上述步骤中,创建 Azure 网站时,你对通常在 web.config 文件中找到的应用程序设置外接程序设置。 为确保 Web 应用程序接收来自 Azure 网站配置的这些值,我们建议你用占位符值来替换 web.config 文件内的值。
打开项目的 web.config 文件。
找到 ida:ClientID、ida:Password 和 ida:TenantId 的外接程序设置。
用占位符值替换这些设置的值:
<add key="ida:TenantId" value="set-in-azure-website-config" />
<add key="ida:ClientID" value="set-in-azure-website-config" />
<add key="ida:Password" value="set-in-azure-website-config" />
- 保存所做的更改。
此时,Web 应用程序、Azure 网站和 Azure AD 中的应用程序均已正确配置并准备部署。
部署 Office 365 API ASP.NET Web 应用程序
在此步骤中,将 Office 365 API Web 应用程序发布到 Azure 网站。 完成网站部署后,将对其进行测试以确保所有事项都如预期执行。
注意
此步骤假定你安装了 Microsoft Azure SDK 版本 2.0 或更高版本。
部署 ASP.NET Web 应用程序
打开 Visual Studio 中的 Office 365 API Web 应用程序。
在“解决方案资源管理器”工具窗口,右键单击项目并选择“发布”开始“发布 Web 向导”。
在“配置文件”选项卡上,选择“Microsoft Azure 网站”。
此时将提示你使用你的组织 ID 登录到你的 Azure 订阅。
- 登录后,从该页选择在上一步骤中创建的网站,然后选择“确定”。
- 在“连接”选项卡上,选择“验证连接”按钮以确保成功下载并应用连接配置文件。
- 选择“发布”按钮以将 Web 应用程序发布到 Azure 网站。
测试 ASP.NET Web 应用程序
将 Web 应用程序发布到 Azure 网站后,Visual Studio 将打开一个浏览器并转到网站的主页。
默认情况下是 HTTP 端点。 当你配置了设置为仅接受来自 HTTPS 端点的登录的 Azure AD 应用程序时,请从上一步骤撤回。 使用应用程序之前,请更新 URL 以将其指向 HTTPS 端点。
在浏览器中,更新 URL 以转至 Azure 网站的 HTTPS 主页。 在此页面上的示例中,它是
https://o365api-01.azurewebsites.net
。选择页面右上角页眉中的“登录”链接。 这会将你重定向到 Azure AD 登录页面。
注意
如果在此时遇到错误,很可能是有关为 Azure 网站创建的三个外接程序设置的问题。 请返回并确保值是来自 Azure AD 租户和应用程序的正确值。
- 成功登录后,你将被重定向回你创建的 Azure 网站的 Web 应用程序的主页。
此时,你已经成功部署了你的 Office 365 API Web 应用程序项目,并使其在 Azure 网站运行。