Configure Object Cache Accounts

If you are using SharePoint Publishing you will want to configure object cache accounts

So, what is the object cache?

The object cache stores properties about items in SharePoint Server 2013. Items in this cache are used by the publishing feature when it renders web pages. The goals of the object cache are to reduce the load on the computer on which SQL Server is running, and to improve request latency and throughput. The object cache makes its queries as one of two out-of-box user accounts: the Portal Super User and the Portal Super Reader. These user accounts must be properly configured to ensure that the object cache works correctly. The Portal Super User account must be an account that has Full Control access to the web application. The Portal Super Reader account must be an account that has Full Read access to the web application.


I recommend reading the technet article for more details

Note: these need to be two domain accounts that are never used to log into the site EVER…

To set these accounts up you first need to log into Central admin as a farm admin…

Click Manage Web Applications from the CA home screen

Select any web application that uses publishing features and click user policy


From the screen that pops up select add users, make sure all zones is selected under zones and click next


From here add your Super User account and select full control. Then follow the steps again, add your super reader account and select full read.


Repeat these steps for each web app that uses the publishing features…

Note under the user name column are the account names we will use in the next steps will be listed, so copy them to a notepad. If you are using claims, which you should be… seriously this should appear in front of the domain name i:0#.w|

Paste the following into notepad or PowerGUI and change the “” and “” bits to your account names. Save the file as setUsers.ps1. Also, make sure your account has rights to run powershell . This permission will be shelladmin in SQL server on the Config database, sometimes it is set automatically when you are added to the farm admin group, but then sometimes it doesn’t.

$wa_url = Read-Host “enter web app url: “

$wa = Get-SPWebApplication -Identity $wa_url
$wa.Properties[“portalsuperuseraccount”] = “”
$wa.Properties[“portalsuperreaderaccount”] = “”

Run the SharePoint management shell as an administrator by right clicking and selecting run as administrator…

Run the script by typing cd\ then .\scripts\setusers

Note: this assumes that you are on the server and you have put your script in a folder called scripts on the C drive.

You will be prompted for the web app url, type it in and hit enter….

After hitting enter it’ll take a few seconds and then the c:\ prompt will reappear. Repeat this step for each web app you added the accounts too.

Reset iis and you are all set.

I found this handy article on how to check to make sure everything is set up correctly.

Following the steps above for creating a ps1 doc and paste this in it…

$WebApplications = Get-SPWebApplication
foreach ($WebApplication in $WebApplications)


Run this the same way you ran the other script and you can verify that everything is set up correctly.


Make sure to reset IIS when you are finished. 


Install and Configure Workflow for SharePoint 2013

To start with you will need to install and configure SharePoint 2013. For instructions on how to do that click the link below…

I found the following on Shoel’s Blog and had to include it
You should Know
Before start installing/developing SharePoint Manager you need to know few points:
You should not use SharePoint ‘system account’ to test workflow. If you use ‘system account’ to develop/run workflow, the workflow will fail to run.
You need to make sure User Profile Service (UPS) is running and the user who is running workflow has profile in UPS. Workflow Manager use UPS under the hood.
Instructions on how to configure the UPS

Make sure App Management Service is created and running. You don’t need to configure SharePoint 2013 App settings in the server, just creating App Management service (with proxy) will do.
SharePoint 2013 workflow is declarative – means you can only define workflow in XML. You can’t write any C# code inside workflow as you used to do before. All your custom logic should be put outside of SharePoint, inside WCF Service. Then you will call the service from workflow to implement your custom logic in code.
To register workflow Server with SharePoint, a SharePoint site collection URL is provided (see the section Register Workflow Service with SharePoint later in the post). Apparently it seems, each and every site collection need to be registered with workflow server. But it’s not, registering a single SharePoint site  collection, will enable workflow manager for all SharePoint web applications/site collections.

The rest of the blog Shoel’s post can be found here

After installing and configuring SharePoint you need to install Workflow Manager 1.0. You can download it by clicking the link below…

Once you download the install right click it and select run as administrator and click OK when the popup comes up. Doing so will result in the Web Platform Installer opening. Click install to begin the install.


Clicking install will bring up the Prereqs screen. Click I Accept


Select if you want to use Microsoft Update or not and click continue


Clicking continue will result in the progress screen popping up.


After the install is complete you will see the following screen, click Continue


When the wizard opens you are presented with 3 options. Since I’m alright with default settings I am going to select that.


Fill in the appropriate settings. Note: you are going to need to be signed in as a user who has dbcreator and security admin rights to the database server.


Fill in your Cert Generation key and click the right arrow


You will then be presented with a Summary and a progress bar that will take a few minutes to complete while it sets your Workflow manager. I suggest clicking the copy link at the bottom of the screen, so you have a record of all of your settings. When you are done click the checkbox

After clicking the check box the configuration will begin.


When this is complete click on the check mark.

Next you need to run the following script using the SharePoint Management Shell, if you are using HTTP. Note replace workflowmanager with your server name and sharepointsite with your sharepoint site name.

Register-SPWorkflowService –SPSite http://sharepointsite –WorkflowHostUri http://workflowmanager:12291 –AllowOAuthHttp

If you are using https you want will use the following

Register-SPWorkflowService –SPSite http://sharepointsite –WorkflowHostUri https://workflowhost:12290

Make sure to create your App management Service if you haven’t already. This can be done by going to the service application screen and selecting App management service from the drop down.

You will also need to go to the Central admin home screen and navigate to Services on server and start both the app management service and the workflow management service.

Finally open a command prompt as an administrator, type in iisreset /noforce and hit enter. After this you should be able to create and run SharePoint 2013 workflows.

SharePoint 2013/Server 2012 Install Issues

Today I installed SharePoint 2013 on a Server 2012 server and ran into a couple errors. The first was that the IIS configuration failed. This ended up being because .NET 3.5 was not able to be installed. This is an error that spans Server 2012 and Windows 8. The solution is to mount the install media and type the following in a cmd window

dism.exe /online /enable-feature /featurename:NetFX3 /Source:D:\sources\sxs /LimitAcces

Note: your source drive letter will depend on what drive the media is in or mounted too.

The next issue I ran into was that when I clicked on set up, after installing the prereqs I was told that the server needed to restart. The solution to that is…

1. Open Regedit. Click File Export (you ALWAYS want to backup your registry this way prior to making changes)

2. Find the key “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager”.

3. Rename the “PendingFileRenameOperations” value to “PendingFileRenameOperations2”.

Once I renamed it, the install could continue.

A Tour of SharePoint 2013 Search Part 1

This post covers Search after configuring the service application… see instructions for configuring the service application here…

This is part one of a series of Search Posts that will cover SharePoint 2013 Search in detail.  One important note right off is that Fast Search is SharePoint 2013 Search.  Another important note is that it is very resource intensive, so you are going to want to run minimum specs or better in a production environment.

Also, whatever you do, DO NOT set your virus scanner to scan search data folders in real-time and do not use dynamic RAM allocation for Search Servers.  They couldn’t have been more clear about this at the conference.  Another tip I picked up from the conference is that 10 Million items is your threshold for needing to move from single server environment to one in which the search components are distributed between multiple servers.

To Access the Search Service Application … Click on manage service applications under Application Management on the Central Admin home page.

From here click on your Search Service Application’s name to link to the Search Administration Screen


The first thing to note is that you can change your Default content access account by clicking on the account name.  This will bring this up…


You can change the contact email address for crawls by clicking on the current email address.

You can add a proxy server for federation by clicking on none next to Proxy server for crawling and federation…  I believe this is something that you would need to set up if you wanted to set up Hybrid Search between SharePoint on-premise and SharePoint Online, but that is something I need to look into further, and set up for myself in order to confirm.


You can disable search alert status and query logging, and you can change your global search center URL.

If you scroll down you are presented with the Search application Topology


The Search Application Topology lists your Search Components and databases.

Starting from the top…

The Admin component runs all the system processes that search needs in order to function.  You can have multiple Admin components in your farm, but only one can be active at any given time.

The Crawl component is what is used to crawl content based off of settings stored in the crawl database/s.  You can add crawl components in order to increase crawl performance.

The Content processing component processes crawled items before passing them on to the index component.  This is where documents are parsed and properties are mapped etc…

The Analytics processing component handles search and usage analytics.

The Query processing component handles all analysis and processing of search queries and results.

Index partitions are a means by which to divide up the index.  Index partitions are stored on disk.  Index partitions collectively make up the Search Index.

Index replicas are exactly what they sound like.  Really they are Index partition replicas.  Each replica has an index component attached to it.  Creating replicas is a means by which to achieve fault tolerance in that you have two or more replicas of an Index partition that live on different servers, so that is one server goes down that portion of the index is still available.

The Administration database is where all of your configuration data is stored.  You will have one and only one of these.

The Analytics reporting database stores your search usage analytics results.

The Crawl database is your crawl history store and crawl operation manager.  You can have multiple crawl databases and each one can have one or more crawl components associated with it.

Finally you’ll have a Link database which stores data extracted by your content processing component as well as click-through data.

Additional components and databases must be created via Powershell and that subject warrants its own post.

There is quite a bit of information out on Technet, and some of the info from this post came from diagrams that can be found at…

This ends part one… I’m hoping to have time to get the other parts of this up soon, so stay tuned.

Installing SharePoint 2013 RTM

First I suggest checking out the beginning of my Blog Post on installing the Preview in order to prepare your environment

Once you’ve finished this the steps you go through should be just about the same as mine.

SharePoint 2013 RTM became available the other day, so I decided I would uninstall preview
in dev and go ahead and install RTM.

First I ran the Prereqs installer:

After clicking the next button this appeared, I accepted the terms and clicked next.

After the prereqs installed I was alerted that I needed to restart, so I clicked finish and the server restarted.

After my server restarted I reran the prereqs installer again which resulted in this:

I then clicked on Install SharePoint Server

This box appeared, so I clicked yes

I was then presented with this screen:

I entered my product key and clicked continue.

I accepted the license agreement and clicked next

I then selected Complete as my server type. NOTE: There is a file location tab here, this is where you can select to install SharePoint on a disk other than the OS disk AND is where you can specify the disk that the Index will run on. You will most likely want to at least change the location of the index, so pay attention to this.

after selecting the type of server and the file locations click Install Now

After a bit of waiting the install completed and I was presented with the option to run the configuration wizard.

Update: Given that it has been some time since RTM came out I realized I needed to add the following bit of information. When performing a new install of SharePoint 2013 you are going to want to go ahead and install the latest CU which can be found here… This way you get all the latest fixes etc. Make sure to go ahead and do this prior to running the configuration wizard, so you only have to run it once.

I clicked next… This warning popped up..

I clicked OK…

I opted to Creat a new Server farm and clicked next

I entered my database server and farm account info and clicked next

I entered a passphrase and clicked next

I left the Central Admin Web Application settings at their defaults and selected next

I verified that all of my info was correct on the summary page and clicked next

SharePoint then started to configure and I patiently waited for it to complete…

Once it completed it let me know and requested that I participate in the Customer Experience Program.  I made my selection and clicked OK…  At which point I think I forgot to take another screen shot…

I was given that option to run the other configuration wizard which I declined.

I was then taken to the Central Admin Home Page at which point I noticed the new logo.

That concludes my RTM install experience.  I hope this is helpful.  I actually have to install this somewhere else later on tonight, so I will update this if I find that I missed anything…

SharePoint 2013 State Service Configuration

“The State Service is a shared service that is used by some Microsoft SharePoint Server 2010 components to store temporary data across related HTTP requests in a SQL Server database. In SharePoint Server 2010, the State Service is required by InfoPath Forms Services (including out of the box and custom workflow forms), the SharePoint Server 2010 Chart Web Part, and certain Microsoft Visio 2010 scenarios that do not use Microsoft Silverlight 3.”

The above quote detailing the SharePoint 2010 State service, which best I can tell serves the same purpose in 2013, comes from this technet article:

Update: I recently found this quote… “The State Service must be properly configured for the Search Administration Crawl and Query Health Reports to function properly.”

on this wiki

I think it is pretty clear that this is something that needs to be configured for every SharePoint 2013 install.

Just like in SharePoint 2010 there are only 2 ways to provision the State Service.  One is with the Wizard that provisions everything else, and the other is with powershell.  Since I never use the wizard, I’m left with Powershell as my only option.

To do this simply change the names to whatever you want, copy each line below individually into the command shell and press enter after each.

$stateName = “State Service”

$stateDBName = “SP2013_State_Service”

$stateDB = New-SPStateServiceDatabase -Name $stateDBName

$state = New-SPStateServiceApplication -Name $stateName -Database $stateDB

New-SPStateServiceApplicationProxy -Name “$stateName Proxy” -ServiceApplication $state –DefaultProxyGroup

When you have successfully configured the State Service you will see this in your powershell window: