SharePoint 事件 7363:对象缓存:缓存使用的超级读者帐户没有足够的权限访问SharePoint数据库。
转自MSND:http://technet.microsoft.com/zh-cn/library/ff758656(v=office.14)
对象缓存存储 Microsoft SharePoint Server 2010 中项目的相关属性。发布功能在呈现网页时使用此缓存中的项目。对象缓存的目标是减少运行 SQL Server 的计算机上的负载,并缩短请求延迟和增加吞吐量。对象缓存以两个自带用户帐户之一的身份来进行查询:“门户超级用户”和“门户超级读者”。必须正确配置这两个用户帐户,确保对象缓存正常运行。“门户超级用户”帐户必须对 Web 应用程序具有“完全控制”权限。“门户超级读者”帐户必须对 Web 应用程序具有“完全读取”权限。
![]() |
---|
“门户超级用户”和“门户超级读者”帐户必须是单独的帐户,不得用于登录网站。 |
本文介绍为什么必须配置以及如何配置这些对象缓存用户帐户。有关对象缓存的信息,请参阅缓存设置操作 (SharePoint Server 2010)。
在 SharePoint Server 2010 中,对项目的查询与进行查询的用户帐户关联在一起。发布功能的各个部分所进行查询的结果缓存在对象缓存中。这些结果根据执行查询的用户进行缓存。若要优化缓存命中率和内存要求,必须根据用户能否查看草稿项目来进行查询。当发布控件请求对象缓存进行查询以获取控件数据时,缓存不以提出请求的用户身份进行查询,而是以“门户超级用户”和“门户超级读者”帐户的身份分别进行一次查询。这两次查询的结果存储在对象缓存中。“门户超级用户”帐户的结果包括草稿项目,“门户超级读者”帐户的结果仅包括已发布项目。然后对象缓存会检查发起请求的用户的访问控制列表 (ACL),并根据该用户能否查看草稿项目将相应的结果返回给该用户。通过向 Web 应用程序添加“门户超级用户”和“门户超级读者”帐户,缓存只能为两个用户存储结果。这增加了针对查询返回的结果数,并减少了存储缓存所需的内存量。
默认情况下,“门户超级用户”是网站的系统帐户,“门户超级读者”帐户是 NT Authority\Local Service。使用自带帐户存在两个主要问题。
第一个问题是某些项目已签出到系统帐户,因此当进行的查询包括这些项目时,将返回项目的签出版本而不是最新发布的版本。这之所以是一个问题,因为这并不是用户期望返回的结果,因此缓存必须进行第二次查询以获取正确版本的文件。每当查询请求包含这些项目时,都会对服务器性能产生负面影响。对于已签出项目的任何用户,如果该用户的帐户被设置为“门户超级用户”帐户,也会发生同样的问题。这就是配置为“门户超级用户”和“门户超级读者”的帐户不应该用于登录网站的原因。这样可确保用户不会无意地签出项目而导致出现性能问题。
默认的“门户超级读者”帐户是 NT Authority\Local Service,这在声明身份验证应用程序中不会被正确解析。因此,如果没有为声明身份验证应用程序明确配置“门户超级读者”帐户,浏览到此应用程序下的网站集会导致出现“拒绝访问”错误,即使对网站管理员也是如此。对于显式使用对象缓存的任何功能(例如 SharePoint Server 发布基础架构、元数据导航、内容查询 Web 部件或导航),任何使用这些功能的网站都会发生此错误。
本文内容:
使用管理中心和 Windows PowerShell 配置对象缓存用户帐户
可以使用管理中心和 Windows PowerShell 为对象缓存配置用户帐户。必须先在管理中心网站中创建帐户,然后使用 Windows PowerShell 将帐户添加到 Web 应用程序中。必须将用户帐户添加到每个 Web 应用程序中。
![]() |
---|
在此过程完成后,必须重置 Internet Information Services (IIS) 以应用对 Web 应用程序所做的更改。请确保在对连接到网站的用户影响最小的情况下执行此过程。有关 IISReset 的详细信息,请参阅 IIS 重置活动(该链接可能指向英文页面)。 |
使用管理中心创建用户帐户
确认您拥有以下管理凭据:
若要在管理中心中创建用户帐户,您必须是运行 SharePoint 管理中心网站的计算机上 Farm Administrators 组的成员。
在管理中心网站上的“应用程序管理”部分,单击“管理 Web 应用程序”。
单击想要配置的 Web 应用程序的名称。
在“Web 应用程序”选项卡上的“策略”组中,单击“用户策略”。
在“Web 应用程序的策略”窗口中,单击“添加用户”。
从“区域”列表中,选择“所有区域”,然后单击“下一步”。
在“用户”框中,键入“门户超级用户”帐户的用户名。
单击“检查名称”图标以确保帐户名称可以被应用程序服务器上的身份验证提供程序解析。
在“选择权限”部分,选中“完全控制 - 拥有完全控制权限”框。
单击“完成”。
对“门户超级读者”帐户重复步骤 5 到步骤 8。
在“选择权限”部分,选中“完全读取 - 拥有完全只读权限”框。
单击“完成”。
记下“对象缓存超级读者”和“对象缓存超级用户”帐户的名称在“用户名”列中的显示方式。显示的字符串会有所不同,具体取决于您是否对 Web 应用程序使用声明身份验证。
使用 Windows PowerShell 向 Web 应用程序添加用户帐户
确认您满足以下最低要求:请参阅 Add-SPShellAdmin。
复制以下代码并粘贴到文本编辑器(如记事本)中:
$wa = Get-SPWebApplication -Identity "<WebApplication>"
$wa.Properties["portalsuperuseraccount"] = "<SuperUser>"
$wa.Properties["portalsuperreaderaccount"] = "<SuperReader>"
$wa.Update()将以下占位符替换为相应值:
<WebApplication> 是要将帐户添加到的 Web 应用程序的名称。
<SuperUser> 是要使用的“门户超级用户”帐户,显示在前面过程的步骤 14 中提到的“用户列”字段中。
<SuperReader> 是要使用的“门户超级读者”帐户,显示在前面过程的步骤 14 中提到的“用户列”字段中。
保存文件,将其命名为 SetUsers.ps1。
注意:
可以使用其他文件名,但必须将 ANSI 编码的文件保存为扩展名为 .ps1 的文本文件。
关闭文本编辑器。
在“开始”菜单上,单击“所有程序”。
单击“Microsoft SharePoint 2010 产品”。
单击“SharePoint 2010 Management Shell”。
转到保存该文件的目录。
在 Windows PowerShell 命令提示符处,键入以下命令: ./SetUsers.ps1
重置 Internet Information Services (IIS)。有关 IISReset 的详细信息,请参阅 IIS 重置活动(该链接可能指向英文页面)
SharePoint 事件 7363:对象缓存:缓存使用的超级读者帐户没有足够的权限访问SharePoint数据库。的更多相关文章
- NHibernate系列文章八:NHibernate对象一级缓存
摘要 Nhibernatea缓存非常强大,按照缓存存储在Session对象还是SessionFactory对象分为一级缓存和二级缓存. 一级缓存存在于Session对象里,也叫Session缓存,由S ...
- MemoryCache缓存 ---缓存时效
MemoryCache缓存 ---缓存时效测试 var cachePool = new MyCachePool(); //Thread.Sleep(1000); var value = cachePo ...
- js中的DOM事件与对象
概念图 document.getElementById("bb"); 根据id找到bb,只能找一个哦 var aa = document.getElementById(" ...
- c++事件内核对象(event)进程间激活(转)
源出处:http://blog.csdn.net/richerg85/article/details/7538493 此文主要说明的是,c++中创建的一个事件内核对象可以在不同的程序(进程)间共用,也 ...
- SharePoint JavaScript 客户端对象使用视频教程
本次视频教程是为大家介绍如何使用SharePoint JavaScript客户端对象,包括对于站点.列表.文档库.列表项.文件夹.文件和附件等基本对象的操作,同时,为大家举几个简单的应用的例子,让大家 ...
- 从零开始学 Web 之 jQuery(七)事件冒泡,事件参数对象,链式编程原理
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
- 异步设备IO OVERLAPPED结构(设备内核对象 事件内核对象 可提醒IO)
同步IO是指:线程在发起IO请求后会被挂起,IO完成后继续执行. 异步IO是指:线程发起IO请求后并不会挂起而是继续执行.IO完毕后会得到设备驱动程序的通知. 一.异步准备与OVERLAPPED结构 ...
- addEventListener()绑定事件的对象方法。
addEventListener()绑定事件的对象方法.addEventListener()含有三个参数,一个是事件名称,另一个是事件执行的函数,最后一个是事件捕获,, obj.addEventLis ...
- 《纵向切入ASP.NET 3.5控件和组件开发技术》笔记:高效率事件集合对象
在之前讲的几个例子中,使用的是最普通的定义事件方法,比如KingTextBox中事件是这样定义的:/// <summary>/// 获得本书更多内容,请看:/// http://blog. ...
随机推荐
- 《利用Python进行数据分析》笔记---第2章--1880-2010年间全美婴儿姓名
写在前面的话: 实例中的所有数据都是在GitHub上下载的,打包下载即可. 地址是:http://github.com/pydata/pydata-book 还有一定要说明的: 我使用的是Python ...
- 基于tensorflow的增强学习
可以通过下面的连接查看这个项目工程: https://github.com/reinforceio/tensorforce 通过这遍文章来了这个项目的使用: https://reinforce.io/ ...
- Android中的sp和wp指针
经常会在android的framework代码中发现sp<xxx>和wp<xxx>这样的指针,平时看的时候都把他当成一个普通的指针封装过掉了,这几天终于忍不住了,想深入了解一下 ...
- weight decay (权值衰减)
http://blog.sina.com.cn/s/blog_890c6aa30100z7su.html 在机器学习或者模式识别中,会出现overfitting,而当网络逐渐overfitting时网 ...
- vue中父子组件值的传递
父传子 父组件:
- HihoCoder 1063 : 缩地 树形DP第二题(对象 边)
时间限制:12000ms 单点时限:1000ms 内存限制:256MB 描述 编织者是 Dota 系列中的一个伪核,拥有很强的生存能力和线上消耗能力.编织者的代表性技能是缩地.缩地带来的隐身.极限移动 ...
- spring mvc 思想
目录 一.前言 二.spring mvc 核心类与接口 三.spring mvc 核心流程图 四.spring mvc DispatcherServlet说明 五.spring mvc 父子上下文的说 ...
- tableau-交互筛选器
欢迎观看这段关于“交互筛选器”的视频. 将字段拖到筛选器功能区就可以轻松执行筛选,但是如果我们希望能够直接从视图中修改筛选器 选择项,那该怎么办?如果我们在可看到“子类别”字段的任何位置右键单击, ...
- 重温CLR(十六) CLR寄宿和AppDomain
寄宿(hosting)使任何应用程序都能利用clr的功能.特别要指出的是,它使现有应用程序至少能部分使用托管代码编写.另外,寄宿还为应用程序提供了通过编程来进行自定义和扩展的能力. 允许可扩展性意味着 ...
- MySQL 百万级分页优化(Mysql千万级快速分页)
以下分享一点我的经验 一般刚开始学SQL的时候,会这样写 : SELECT * FROM table ORDER BY id LIMIT 1000, 10; 但在数据达到百万级的时候,这样写会慢死 : ...