高信任度,S2S配置中的SharePoint 2013应用程序生命周期事件接收器标注的身份验证选项

肖恩·海丝特

我有一个使用标准Visual Studio 2013 PHA模板编写的本地,高信任度提供程序托管的应用程序(PHA)。我遵循了Kirk Evans在他的博客中介绍的High-Trust / S2S应用程序的配置步骤:

http://blogs.msdn.com/b/kaevans/archive/2012/11/27/creating-high-trust-sharepoint-apps-with-microsoft-office-developer-tools-for-visual-studio-2012- Preview-2.aspx

一切工作都按预期进行,无需太多修改,直到我添加了一个服务来为AppInstalled事件托管事件接收器。尝试在启用事件的情况下安装应用程序时,我从SharePoint收到以下错误:

远程事件接收器标注失败。详细信息:HTTP请求未经客户端身份验证方案“匿名”授权。从服务器收到的身份验证标头是“ NTLM; Negotiate”。

现成的PHA在其服务绑定中未配置为支持匿名身份验证。当我通过web.config添加对匿名身份验证的支持时,该应用程序将安装并且所有事件接收器逻辑均按预期执行,包括将列表和安全组添加到主机Web的CSOM调用。

这给我留下了两部分的问题:

  1. 对于高信任度/ S2S应用程序事件接收者,匿名访问是否有明确要求?一方面,这似乎是一个安全漏洞。另一方面,在应用程序生命周期事件中,我没有找到任何方法来强制SharePoint使用除匿名之外的身份验证方案。我错过了什么吗?
  2. 如果需要匿名访问,是否有人建议(测试并确认)最佳实践,以其他方式保护该通信?我想到了IP地址限制,但我还没有完全想到。

TIA

吉加尔
  1. 高信任度/ S2S应用程序事件接收者绝对需要匿名访问。

  2. 您可以使用HTTP来保护与App Event接收器的通信。一个建议是阻止SharePoint将从网络内部调用Web服务,从而阻止来自外部域的应用程序事件接收器的访问。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用声明身份验证保护SharePoint 2013中的应用程序页面

来自分类Dev

SharePoint 2013事件接收器错误

来自分类Dev

SharePoint 2013跨域库方案:远程应用程序的身份验证机制

来自分类Dev

SharePoint 2013跨域库方案:远程应用程序的身份验证机制

来自分类Dev

在 .NET Core 2 WebAPI 应用程序中,dbcontext 的范围和生命周期是多少

来自分类Dev

在单页Svelte应用程序中设置页面标题的最佳放置/生命周期方法

来自分类Dev

Dotnet Core控制台应用程序中的Entity Framework Core DbContext生命周期

来自分类Dev

访问广播接收器中的应用程序类

来自分类Dev

整个应用程序中的广播接收器

来自分类Dev

OAuth 2中的授权代码在运行服务器的客户端应用程序的生命周期中仅使用一次吗?

来自分类Dev

在我的Symfony 2应用程序中配置基于HTTP浏览器的基本身份验证-不显示HTTP身份验证登录

来自分类Dev

在SwiftUI生命周期应用程序中,我应该在哪里准确注册CoreData转换器值?

来自分类Dev

客户端-服务器应用程序中的Google Play服务身份验证

来自分类Dev

广播接收器的生命周期

来自分类Dev

内部应用程序的OAuth2身份验证

来自分类Dev

银光应用程序中的Pentaho身份验证方法。

来自分类Dev

EJB中的应用程序与容器身份验证

来自分类Dev

Golang WebSocket应用程序中的身份验证

来自分类Dev

UWP应用程序中的身份验证

来自分类Dev

Cordova / AngularJS应用程序中的Facebook身份验证

来自分类Dev

EJB中的应用程序与容器身份验证

来自分类Dev

$ injector:modulerr:AngularJS应用程序中的身份验证

来自分类Dev

Django 在“身份验证”应用程序中缺少迁移

来自分类Dev

数据库连接为2个应用程序之间共享的对象的整个生命周期打开

来自分类Dev

在手机中的整个Android应用程序生命周期中存储变量的方法

来自分类Dev

伴随对象是否在应用程序的生命周期中保留在内存中

来自分类Dev

在手机中的整个Android应用程序生命周期中存储变量的方法

来自分类Dev

如何使用身份服务器 3 对 2 个不同的 mvc 应用程序进行身份验证

来自分类Dev

Laravel 身份验证生命周期

Related 相关文章

  1. 1

    如何使用声明身份验证保护SharePoint 2013中的应用程序页面

  2. 2

    SharePoint 2013事件接收器错误

  3. 3

    SharePoint 2013跨域库方案:远程应用程序的身份验证机制

  4. 4

    SharePoint 2013跨域库方案:远程应用程序的身份验证机制

  5. 5

    在 .NET Core 2 WebAPI 应用程序中,dbcontext 的范围和生命周期是多少

  6. 6

    在单页Svelte应用程序中设置页面标题的最佳放置/生命周期方法

  7. 7

    Dotnet Core控制台应用程序中的Entity Framework Core DbContext生命周期

  8. 8

    访问广播接收器中的应用程序类

  9. 9

    整个应用程序中的广播接收器

  10. 10

    OAuth 2中的授权代码在运行服务器的客户端应用程序的生命周期中仅使用一次吗?

  11. 11

    在我的Symfony 2应用程序中配置基于HTTP浏览器的基本身份验证-不显示HTTP身份验证登录

  12. 12

    在SwiftUI生命周期应用程序中,我应该在哪里准确注册CoreData转换器值?

  13. 13

    客户端-服务器应用程序中的Google Play服务身份验证

  14. 14

    广播接收器的生命周期

  15. 15

    内部应用程序的OAuth2身份验证

  16. 16

    银光应用程序中的Pentaho身份验证方法。

  17. 17

    EJB中的应用程序与容器身份验证

  18. 18

    Golang WebSocket应用程序中的身份验证

  19. 19

    UWP应用程序中的身份验证

  20. 20

    Cordova / AngularJS应用程序中的Facebook身份验证

  21. 21

    EJB中的应用程序与容器身份验证

  22. 22

    $ injector:modulerr:AngularJS应用程序中的身份验证

  23. 23

    Django 在“身份验证”应用程序中缺少迁移

  24. 24

    数据库连接为2个应用程序之间共享的对象的整个生命周期打开

  25. 25

    在手机中的整个Android应用程序生命周期中存储变量的方法

  26. 26

    伴随对象是否在应用程序的生命周期中保留在内存中

  27. 27

    在手机中的整个Android应用程序生命周期中存储变量的方法

  28. 28

    如何使用身份服务器 3 对 2 个不同的 mvc 应用程序进行身份验证

  29. 29

    Laravel 身份验证生命周期

热门标签

归档