SharePoint 2016: UserProfileApplicationProxy Proxy is null

Hi all!

After a looong time without installing a new SharePoint farm, yesterday it was the day 🙂 I needed to install a new farm, so I started doing it and it was everything so simple. After I installed the farm I was reveiwing the Event Viewer in order to see any errors, and I realize that the farm was throwing a lot of errors complaining about “UserProfileApplicationProxy Proxy is null”

The error itself, makes sense since I did not provisioned the User Profile Service Application, so what can I do? Disable the timers of course 🙂

  1. Log in to Central Administration
  2. Click the Monitoring link on the left and then under Timer Jobs click Review job definitions
  3. On the left click Job History
  4. Change the View from All to Failed Jobs
  5. Click the link for the failed job – in my case I am disabling the following jobs:- UserProfileApplicationProxy – Per Database User Profile to SharePoint Full Synchronization
    – UserProfileApplicationProxy – Unified Group Processing High Performance Job
  6. Click Disable

And that’s all, problem solved and not more errors in the event viewer. To the next thing!

Advertisement

On-Premises Gateway

We are living in a digital transformation to O365, but by the time we are doing this, our customers still need to connect their On-Premises data like SharePoint or SQL to Office 365 applications (PowerApps, Microsoft Flow, Logic Apps, Power BI).

For that reason, Microsoft has introduced on-premises data gateway for providing a quick and secure connection between on premise data and Office 365 apps.

We must keep in mind that there are two different types of gateways, one of them is On-Premises and the other gateway, is the personal gateway, which only allows to connect to PowerBI and can be used as an individual without any administrator configuration.

In the following image, we can see the differences between the personal gateway and the On-Premises gateway:

gw

Moreover, the current supported On-Premises applications are SharePoint 2016 and SQL 2016, as you can see in the diagram below, there are multiple O365 connections to On-Premises services:

aas-gateway-how-it-works.png

The installation process is straightforward, and only is needed a server with the following requirement to use the gateway:

Hardware Requirements:

Hardware Requirements Value
CPU 8 Cores
RAM 8 GB

Software Requirements:

Software Requirements Value
.NET Framework Version – 4.5
Operating System Windows 7 / Windows Server 2008 R2, or later

If you require more info about the gateway, you can follow the links:

https://flow.microsoft.com/es-es/blog/on-premises-data-gateway/

https://powerbi.microsoft.com/es-es/documentation/powerbi-gateway-onprem/

https://docs.microsoft.com/es-es/azure/analysis-services/analysis-services-gateway

Set Item level user permissions to add/edit/read only own items

In a recent project with SharePoint 2016, I needed to configure a library with the following user requirement: The users only have to view, their own items.

By default, this option it is not available in Library settings, it is only available for List settings, so… what we can do for a Library? You guessed right, PowerShell.

To do it, we can follow the following process:

You can also use s PowerShell script to manage the item level permissions:

Manage Read Access
$web = Get-SPWeb http://urlsite/
$list = $web.Lists[“Library Name”]
$list.ReadSecurity = 2
$list.Update()
$web.Dispose()

Note: 1 = “Read all items”, 2 = “Read items that were created by the user”

Manage Write Access
$web = Get-SPWeb http://url site/
$list = $web.Lists[“Library Name”]
$list.WriteSecurity = 2
$list.Update()
$web.Dispose()

Note: 1 = “Create and edit All items”, 2 = “Create items and edit items that were created by the user” 4 = “None”

Hope that helps!

Disable MySite “Let’s get social” dialog

By default, when you open the MySite SC for the first time, you will receive this dialog:

image_thumb[3].png

So, probably under your unknow of SharePoint, you will press “Okay”, but what you don’t know is that pressing that “Okay”, changes the privacy of all your social activities to “everyone”, and also send you an email. So probably, most of users don’t want to share their activities, but what we can do to solve this? PowerShell of course:

$web = get-SPWeb http://urlmysitehost
$web.Properties[“urn:schemas-microsoft-com:sharepoint:portal:profile:SPS-O15FirstRunExperience”]=”OFF”
$web.Update()

Hope that helps!

File Shares as Content Source in SharePoint 2013 On Premises

Hi all!

Another quick post about file shares and SharePoint:

  1. Identify your crawl account, because this account will be used to index the file share (unless specified differently with a crawl rule), so it is necessary to have read access to the file share to this account
  2. If crawled files in file share system contain metadata, this will be used by the search refiners in SharePoint
  3. Security trimming is respected, so when end users search the document in the search site, it will be displayed according to the permissions given on the files and folders.
  4. Only metadata of the documents will be stored in SharePoint, not the documents
  5. It is not possible to get a preview from Office documents that are stored in File Shares, to get a preview, you’ll need to use third party tools.

That’s all!

How to replicate a SharePoint farm

Hi!

The other day I found this interesting article from Nik Charlebois, he talks about how to automate a replicate farm of SharePoint, this farm can be used as development farm or even Test farm.

What he is explaining in the article, is how can we retrieve all the information from our SharePoint 2013/2016 farm by PowerShell (he wrote a PS1 to do that) and collect all this information to create a series of PowerShell codes.

Once this information has been retrieved, is it possible to replicate your environment to another location on-premises.

Hope it helps!

 

How to hide the Timeline in Task List

Hi! Do you need to hide the timeline in your task list? Then this is your post 🙂

As you will know, by default you have the following view of the Task list:

t1

But, if I want to remove the timeline, what I have to do? Pretty simple…

 

  • Go to the Task List, Click on List Tab and then click on “Modify View” button from the ribbon.
  • In the Edit view page, scroll down and expand the ‘Style’ section.
  • Under the Style selection, Uncheck the checkbox ‘Show timeline above the view’

t2And then… click ok to save changes, the result will be like the following:

t3.PNG

Hope that helps!!

 

Exceeding list view threshold

Hi folks,

Recently in a project where we need to work with large lists, as you will know, in SharePoint, lists with more than 5000 items causes problems to the users, and lists with more than 20k items are not possible to manage by the admins, in that cases you will receive a problem like:

“The view can not be displayed because it exceeds the list view threshold(5000 items) enforced be the administrator”

But if you look into the logs, you’ll see the following:

Microsoft.SharePoint.SPQueryThrottledException: The attempted operation is prohibited because it exceeds the list view threshold enforced by the administrator. —> System.Runtime.InteropServices.COMException: The attempted operation is prohibited because

In this case, it was a news list, so it was not possible to order the list in folders or any other method to avoid the item threshold limitation. What is the problem? This issue is By Design, so the throttling limit is enforced to protect the SharePoint Server, why? because each time we access to that list we make a SQL query as the number of items that this list has, so in case that this query exceeds 5000 items (by default) this action is avoided.

As you’ll know, it is possible to change this limit, but you’ll change this limit to the entire web app, which is not recommended, so why we can do as a workaround? Disable throttling 🙂 But you have to take into account that disabling throttling will cause performance issues on the SharePoint Server or the SQL Server.

$web= get-spweb “url”
$list=$web.lists[“listname”]
$list.enablethrottling = $false
$list.update()

After doing this, you’ll query more items in that list 🙂

hope that helps!

Access Requests in SharePoint

The access request feature allows people to request access to content that they do not currently have permission to see. As a site owner, you can configure the feature to send you mail when someone requests access to a site. You can then choose whether to approve or decline their request. If you approve the request, you can also specify the specific level of permission you’d like to assign to a user.

But, if you are in my case that I needed to configure the access request in all the web app, you can use the following PowerShell:

$spsites = get-spsite -Limit All

foreach($spsite in $spsites)

{

foreach($SPweb in $spsite.AllWebs)

{

# if a site inherits permissions, then the Access request mail setting also will be inherited

if (!$SPweb.HasUniquePerm)

{

write-host $SPweb "Inheriting from Parent site";

}

elseif($SPweb.RequestAccessEnabled)

{

$SPweb.RequestAccessEmail = "mail@maildomain.com";

$SPweb.Update();

write-host $SPWEB "Configured"

}

}

}

Hope it helps!

Microsoft .NET Framework to disable RC4 in Transport Layer Security installation error

Hi All!

During a fresh installation of a SharePoint 2016 farm I encountered this error, I was installing all the prerequisites, I rebooted the server when it demanded, but when I continued with the installation I faced the following error message:

Update for Microsoft .NET Framework to disable RC4 in Transport Layer Security (KB2898850): installation error

The error patch description is “A security issue has been identified that could allow an unauthenticated remote attacker to compromise your system and gain access to information”

So you can download the security patch from Microsoft Download Center through this URL http://www.microsoft.com/en-us/download/details.aspx?id=42883

Install by hand this update and try another time to check all the prerequisites in the SharePoint farm. After that I was able to continue with my new installation os SharePoint 2016.

Hope it helps!