Quantcast
Channel: Good Workaround! - ADFS
Viewing all articles
Browse latest Browse all 7

Lessons learned while configuring the SharePoint Services Connector for FIM 2010 R2

$
0
0

I have now configured many SharePoint Management Agents, and initially I had severe problems finding out which attributes to populate with what. Here is the lessons I learned during this investigation.

Application ID

During configuration of the Management Agent, you are requested to input Application ID. I have never used it, and i guess it is used when you have multiple User Profile Service Applications.

Anchor

Do not bother with anchors. Instead just provision a connector space object and let it get the default anchor. You will never see the anchor anywhere except in FIM and internally in the SharePoint databases.

Manager attribute populating bug

There is a bug in SharePoint, where the manager attribute won't be populated in the User Profile Service, even though you are flowing it with FIM. The reason is that the timer job "User Profile Service Application - User Profile ActiveDirectory Import Job" is not created if you configure "Enable External Identity Manager" directly. Instead, you have to first choose "Use SharePoint Active Directory Import" on the "Configure Synchronization Settings", and let this job be created (takes 15 minutes), then switch to "Enable External Identity Manager".

Parallellism

It is not supported to run multiple SharePoint MAs simultaneously. Not sure why, but a little bit of code snooping shows this is true.

Pictures

Pictures can be a bit difficult, especially when trying with limited permissions. First of all, if you use fiddler the attribute is actually called "PictureURL". Also, technically it seems as though what actually happens when you use this connector and export a picture, you transfer the binary data (as base64 ofc) out in "PictureURL / Picture" and the API you talk to uploads these data as an original to your mysite, at the location "http://mysitehost.goodworkaround.com/User photos". And then it stores the url of the picture in the User Profile Service.

First of all, the MySite host MUST BE IN THE SAME FARM. It is not possible to have pictures uploaded to a separate SharePoint farm. Second, there is a requirement for permissions on the mysitehost. You can grant these permissions with the following cmdlet:


$w = Get-SPWebApplication -Identity http://mysitehost.goodworkaround.com
$w.GrantAccessToProcessIdentity("gwrnd\managementAgentAccount")

If you do not give this permissions, FIM will not get any error message from SharePoint saying "sorry, we could not store this picture". It will simply be "ok" even though the picture was not saved.

Also, as you can see in this TechNet article you need to run a cmdlet to actually generate the thumbnail photos.

ADFS authentication

To configure ADFS authentication the following attributes needs to be flowed from FIM to SharePoint:

SharePoint attributeValue
SPS-ClaimProviderIDName of the trusted identity provider in SP (case sensitive): "SAML Users"
SPS-ClaimProviderTypeConstant: "Trusted"
SPS-ClaimIDUnique identifier - mail, userPrincipalname, employeeID etc. Must be what comes in the nameidentifier claim from ADFS
SIDDo not flow anything
ProfileIdentifiersomeprefix:unique - where "unique" is the same as SPS-ClaimID (not required, but make it unique)
UserNameDo not flow anything
AccountNameDo not flow anything



Example user

SharePoint attributeValue
SPS-ClaimProviderIDSAML Users
SPS-ClaimProviderTypeTrusted
SPS-ClaimIDmarius@goodworkaround.com
SIDno flow
ProfileIdentifiergwrnd:marius@goodworkaround.com
UserNameno flow
AccountNameno flow - SharePoint will automatically populate this with something like "i:0\.t|SAML Users|marius@goodworkaround.com"

Windows authentication

To configure Windows authentication the following attributes needs to be flowed from FIM to SharePoint:

SharePoint attributeValue
SPS-ClaimProviderIDConstant: "Windows"
SPS-ClaimProviderTypeConstant: "Windows"
SIDObjectSID from Active Directory
ProfileIdentifierDOMAIN\sAMAccountName from Active Directory
UserNamesAMAccountName from Active Directory
AccountNameDo not flow anything



Example user

SharePoint attributeValue
SPS-ClaimProviderIDWindows
SPS-ClaimProviderTypeWindows
SID- binary data -
ProfileIdentifierGWRND\marius
UserNamemarius
AccountNameno flow



That's, hope it saves you some time.


Viewing all articles
Browse latest Browse all 7

Trending Articles