Tuesday, June 8, 2021

SharePoint User profile backend logic

 Recently encounter one very interesting domain authentication failed login scenario , which is current SharePoint server hosted at Domain A then have one way Trust with Domain B.

All the SharePoint service account is under Domain A and the problem is Domain A SharePoint service account keep on go to Domain B triggering the authentication failed .

Check on the ULS log , we have encounter that below informaiton provided during authentication failed at Doman B :

  • SPRequest.GetNTFullNamefromLoginEx: UserPrincipalName=, AppPrincipalName= ,bstrLogin=Domain B\UserABC
  •  System.Runtime.InteropServices.COMException: Cannot complete this action.  Please try again.<nativehr>0x80004005</nativehr><nativestack></nativestack>, StackTrace:    at Microsoft.SharePoint.Utilities.SPUtility.GetFullNameFromLoginEx(String loginName, Boolean& bIsDL)     at Microsoft.SharePoint.SPSecurity.ResolveUser(String userName, String& displayName, Byte[]& sidBytes)     at Microsoft.SharePoint.Administration.SPAcl`1.CreateAce(String principalName, T grantRightsMask, T denyRightsMask)     at Microsoft.Office.Server.Administration.UserProfileApplication.get_SerializedAdministratorAcl()     at Microsoft.Office.Server.Administration.UserProfileApplication.GetProperties(Boolean skipPartitionIds)     at Microsoft.Office.Server.Administration.PartitionPropertiesCache.GetApplicationProperties(UserProfileApplicationProxy proxy)     at Microsoft.Office.Server.Administration.PartitionPropertiesCache.RefreshCacheProperties(Object dummy)     at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)     at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)     at System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()     at System.Threading.ThreadPoolWorkQueue.Dispatch() 
  •  Cannot complete this action.  Please try again.<nativehr>0x80004005</nativehr><nativestack></nativestack>      
From this log we have encounter that user profile have following backend logic :



resolution :
remove domain B user from user profile admin group.

Thursday, May 20, 2021

agentcommonSPRoleChecker.exe

 agentcommonSPRoleChecker是用于检测Agent所在的SharePoint信息的, 例如是否有sharepoint以及版本等,然后会把这个信息同步会DA Control Service.

Noticed that SharePoint server have one service  agentcommonSPRoleChecker.exe running at backend , after checking with the expert to understand that this service is use by the docave agent to get the sharepoint information and sync to DocAve Control Service.

Friday, April 23, 2021

how to use Notepad++ to MASk the IC number at Log file

Under Search mode select : Regular expression

under replace tab : S+[0-9]+[0-9]+[0-9]+[0-9]+[0-9]+[0-9]+[0-9]+[A-Z]

above search is for singapore ic format which is :  S1234567A


Wednesday, February 3, 2021

How to track the progress of SharePoint CU installation ?

 windows > Run > %temp%

inside this temp folder will see the windows installer log file which is referring to the SharePoint CU patching .

can use it to compare with other SharePoint server already completed install , then you will know how soon the installation will complete