SharePoint 2013 开发——Provider-hosted APP准备工作

??博客地址:http://blog.csdn.net/FoxDave

后续的内容我们来一步一步开发一个SharePoint Porvider-hosted APP,本篇主要介绍一些准备工作。

SharePoint需要一系列步骤包括证书和创建唯一的客户端ID来使用服务器到服务器(STS)的通信协议。使用STS通信协议的APP叫做高信任应用程序,因为APP允许使用用户的访问令牌(access token)来模拟用户身份。STS协议是通用的通信协议,需要临时的access token来访问,被微软的应用广泛使用,如Exchange,Lync等。本地服务器创建的SharePoint provider-hosted app不能像云端那样使用上下文令牌来识别用户身份,高信任应用程序并不是完全信任的应用程序,它必须请求安装它的用户来获取权限。

下面我们就来看看如何做:

1. 创建一个证书。

在SharePoint服务器上打开IIS管理器,选择服务器节点,双击服务器证书。

点击右侧菜单中的创建自签名证书。

为证书取一个好记的名称,我们这里叫HighTrustTest了。

点击确定之后就可以看到我们创建的证书了,右键点击证书选择导出,通常我们导出到Visual Studio的项目文件夹目录,这里还没有创建,先导出到桌面,密码随便起一个,我们这里起abc123。

证书先放这,后面会用。

2. 创建一个相应的.cer文件。

在服务器证书视图中,双击我们之前创建的证书显示证书明细,并选择到详细信息标签页。

点击复制到文件按钮,选择下一步,默认值下一步,重复默认值下一步,在文件名这里,我们起作HighTrustTestCert,下一步,点击完成完成导出。

注意:.pfx文件必须跟Visual Studio在同一个机器,.cer文件必须跟SharePoint 2013在同一个机器。.pfx文件必须部署到你的Web应用程序所在Web服务器。

3. 配置SharePoint 2013上的服务供STS应用程序使用,确保配置了应用程序管理服务和用户配置文件应用程序。

管理中心->应用程序管理->管理服务应用程序,确保用户配置文件应用程序和应用程序管理服务启动了。管理中心->应用程序管理->服务器上的服务,确保用户配置文件服务启动了。

4. 配置SharePoint 2013以使用证书并配置对你的应用程序的信任

a. 在文本编辑器或 Windows PowerShell 编辑器中,启动一个新文件并向其添加下面的行以创建证书对象

$publicCertPath = "C:\HighTrustTestCert.cer"

$certificate = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2($publicCertPath)

b. 添加下面的行以确保 SharePoint 将证书视为根证书颁发机构

New-SPTrustedRootAuthority -Name "HighTrustTestCert" -Certificate $certificate

c. 添加下面的行以获取授权领域的ID

$realm = Get-SPAuthenticationRealm

d. 你的远程 Web 应用程序将使用访问令牌获取对 SharePoint 数据的访问权限。该访问令牌必须是由 SharePoint 信任的令牌颁发者颁发的。在高信任 SharePoint 相关应用程序 中,该证书是令牌颁发者。添加下面的行以 SharePoint 需要的格式构造颁发者 ID:[email protected]_GUID。(ID可以用Visual Studio自带的GUID创建工具生成一个,注意要小写)

$specificIssuerId = "ed5182f0-3090-4e83-a58b-9eb145619993"

$fullIssuerIdentifier = $specificIssuerId + ‘@‘ + $realm

e. 添加下面的行以将证书注册为受信任的令牌颁发者。-Name 参数必须是唯一的,以便在生产配置中,通常可以使用 GUID 作为部分(或全部)名称,但是在此上下文中,你可以使用友好名称。需要 –IsTrustBroker 开关以确保可以为你开发的所有高信任应用程序使用相同的证书。要立即注册令牌颁发者,需要 iisreset 命令。如果没有该命令,你可能需要等待 24 小时才能注册新的颁发者。

New-SPTrustedSecurityTokenIssuer -Name "High Trust Test Cert" -Certificate $certificate -RegisteredIssuerName $fullIssuerIdentifier -IsTrustBroker

iisreset

f. SharePoint 2013 通常不接受自签名证书。因此当你使用自签名证书进行调试时,请添加下面的行以关闭在远程 Web 应用程序调用到 SharePoint 中时使用的 HTTPS 的 SharePoint 的一般要求。如果未添加,则当远程 Web 应用程序使用自签名证书调用 SharePoint 时,你将收到"403(已禁止)"消息。你将在之后的过程中撤销此步骤。关闭 HTTPS 要求意味着从远程 Web 应用程序到 SharePoint 的请求未加密,但是该证书仍然可以用作访问令牌的受信任的颁发者,这是其在高信任 SharePoint 相关应用程序 中的主要目的。

$serviceConfig = Get-SPSecurityTokenServiceConfig

$serviceConfig.AllowOAuthOverHttp = $true

$serviceConfig.Update()

g. 使用名称 HighTrustConfig-ForDebugOnly.ps1 保存该文件

h. 以管理员身份打开"SharePoint Management Shell",然后使用下面的行运行文件

./HighTrustConfig-ForDebugOnly.ps1

下一篇我们将用Visual Studio进行Provider-hosted APP的开发和部署。

??

时间: 2024-11-05 18:39:55

SharePoint 2013 开发——Provider-hosted APP准备工作的相关文章

BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第3章节--SharePoint 2013 开发人员工具

BEGINNING SHAREPOINT? 2013 DEVELOPMENT 第3章节--SharePoint 2013 开发人员工具 本章你将学到: 理解SharePoint 2013不同工具选项: 在对比中挑选出合适的工具: 本章代码下载: http://www.wrox.com/WileyCDA/WroxTitle/productCd-1118495845.html .主要是SP_Hosted_Custom_List.zip. 在本书这个阶段,你已经了解了SharePoint是什么.新的A

SharePoint 2013 开发——概述

?? 博客地址:http://blog.csdn.net/FoxDave 近来阅读SharePoint 2013开发一书,带着与大家一起分享其中的内容. 部署场景: 本地部署(On-Premise Deployment).O365部署(Office 365 Deployment).托管部署(Hosted Deployment)和混合部署(Hybrid Deployment). 包场景: 完全信任的场解决方案(Full-Trust Farm Solution).部分信任的沙盒解决方案(Partia

BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第3章节--SharePoint 2013 开发人员工具 使用Visual Studio 2012开发SharePoint

BEGINNING SHAREPOINT? 2013 DEVELOPMENT 第3章节--SharePoint 2013 开发人员工具 使用Visual Studio 2012开发SharePoint应用程序 VS2012带有标准系列的工程级和项目级模板,使得SP开发更加简单更加强大.使用SP2010你可以应用VS2010做大量开发,使用VS2012,现在你可以有很多新的功能和选择. 微软带了标准系列的工程级模板,开箱即用,附带额外系列的工程项目模板来帮助你进行开发.例如,你可以创建SP2013

BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第3章节--SharePoint 2013 开发人员工具 SharePoint开发的其他工具

BEGINNING SHAREPOINT? 2013 DEVELOPMENT 第3章节--SharePoint 2013 开发人员工具 SharePoint开发的其他工具 本章节讲了很多SP开发可用的核心工具.当然,除了这些主流的,你还会碰到一些不错的工具--一些可能是你组织中专有的.两个较少人知道的工具在一些情境中是很有帮助的:Expression Blend--设计用,特别是当你构建基于Silverlight的应用程序:Fiddler--调试用. 使用Expression Blend开发 V

BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第3章节--SharePoint 2013 开发人员工具 总结

BEGINNING SHAREPOINT? 2013 DEVELOPMENT 第3章节--SharePoint 2013 开发人员工具 总结 在SP2013中很多重要的开发工具对你来说都是可用的,你可以进行不同类型的开发--从超级用户到设计到管理代码.一些指定的工具包括Napa.SPD.VS.Expression Blend和Fiddler. 随着你在SP开发人员社区成为活跃的一份子,你会发现更多工具.随着VS2012的发布.良好的生命周期和现有对刚进入SP开发世界的人的模板支持,对SP开发的支

SharePoint 2013开发入门探索(二)- 列表操作

我们如何用代码对SharePoint列表做些例如增删改查的操作呢?如果您的程序可以部署到服务器上,就可以使用 服务器对象模型,因为服务器对象模型提供的功能最多,限制最少:否则可能要选择客户对象模型等其他方式,这可能会遇到一些功能限制:另外还有一些其他的访问方式,例如Web服务等.如何在 SharePoint 2013 中选择正确的 API 集请参考链接 http://msdn.microsoft.com/zh-cn/library/jj164060.aspx. 我们首先研究下服务器对象模型.使用

BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第3章节--SharePoint 2013 开发人员工具 网站设置

BEGINNING SHAREPOINT? 2013 DEVELOPMENT 第3章节--SharePoint 2013 开发人员工具 网站设置 你应该熟悉(如果还咩有)的SharePoint主要部分之一是网站设置.你可用点击右手角落的齿轮图标,点击网站设置来访问网站设置.在此页面你会发现大部分站点配置,所以这是尝试理解在哪儿你可以改变站点主题.激活功能.管理权限等的好地方.下图显示了网站设置页面,注意网站设置核心功能被分成几个主要部分.例如,大多安全设置在用户和权限类别中可用,主题是在Web设

BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第3章节--SharePoint 2013 开发人员工具 用SPD开发SharePoint应用程序

BEGINNING SHAREPOINT? 2013 DEVELOPMENT 第3章节--SharePoint 2013 开发人员工具 用SPD开发SharePoint应用程序 很多开发人员说他们宁愿不用SPD作为开发SharePoint的工具.然而,如果你没有在工具集中包括它你可能进度放缓.因为你将发现SPD可以让一些开发任务变得更容易. SPD从FrontPage(早起Web开发人员工具)进化而来到SPD(以SharePoint为中心的设计人员工具,随SharePoint 2010一起出现)

BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第3章节--SharePoint 2013 开发人员工具 使用Napa开发SharePoint应用程序

BEGINNING SHAREPOINT? 2013 DEVELOPMENT 第3章节--SharePoint 2013 开发人员工具 使用Napa开发SharePoint应用程序 如果你做过SharePoint开发,你会知道构建开发环境要花费时间.在SharePoint 2010中,你不得不安装在本地一些软件应用程序,如SharePoint,SQL Server,VS等,并且配置你的环境能使用它们.然后要在本地安装的SharePoint实例上调试.SharePoint 2013快速开发则稍微进

BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第3章节--SharePoint 2013 开发人员工具 SharePoint中基于Web开发

BEGINNING SHAREPOINT? 2013 DEVELOPMENT 第3章节--SharePoint 2013 开发人员工具 SharePoint中基于Web开发 之前提到过,定义SharePoint开发有多种方法.作为高级用户,你可能使用更多原生SharePoint功能在基于Web环境做开发.高级用户典型地在SharePoint站点有逐步上升的权限,并且能够完成以下任务: 创建和管理网站集与网站权限. 配置站点主题. 添加Apps到站点. 为网站中使用创建并部署多媒体. 配置和自定义