Identity Broker Forum
Welcome to the community forum for Identity Broker.
Browse the knowledge base, ask questions directly to the product group, or leverage the community to get answers. Leave ideas for new features and vote for the features or bug fixes you want most.
The target principal name is incorrect when accessing via IIS
I am receiving an error on the standalone web component when trying to access it.
- The site is installed and configured on IIS 7.5 per the instructions.
- Identity Broker is a base install also following the instructions.
- I can access the endpoints hosted on the Identity Broker server from the IIS server.
- The website is on port 8200 and shares the server with SharePoint and MIM Service & Portal.
- Identity Broker is on a separate server with just MIM Sync.
- The server also uses .NET4.6 (only mentioned here as I had issues with SharePoint).
- I have tried enabling Anonymous Authentication over Windows Authentication and have also tried using the Identity Broker service account in the application pool.
- I've disabled Custom Errors to view the error, but have attached Event Log item with the stack trace.
It appears to be an authentication error, but I can't for the life of me work out where in the scheme of things it's coming from.
Event code: 3005 Event message: An unhandled exception has occurred. Event time: 14/08/2017 9:20:14 AM Event time (UTC): 13/08/2017 11:20:14 PM Event ID: 7a9e61eff31a4fedbcdbc46027dff770 Event sequence: 2 Event occurrence: 1 Event detail code: 0 Application information: Application domain: /LM/W3SVC/3/ROOT-1-131471400119122652 Trust level: Full Application Virtual Path: / Application Path: C:\inetpub\wwwroot\UnifyIdentityBroker\Identity Broker\StandaloneWeb\ Machine name: IAM-DEV1-MIM2 Process information: Process ID: 5584 Process name: w3wp.exe Account name: IIS APPPOOL\UNIFYIdentityBroker Exception information: Exception type: HttpException Exception message: The HTTP request is unauthorized with client authentication scheme 'Negotiate'. The authentication header received from the server was 'Negotiate oXIwcKADCgEBomkEZ2BlBgkqhkiG9xIBAgIDAH5WMFSgAwIBBaEDAgEepBEYDzIwMTcwODEzMjMyMDE0WqUFAgMNka+mAwIBKakOGwxERVYuQ1NJUk8uQVWqGTAXoAMCAQGhEDAOGwxzYS11bmlmeS1pZGI='. at System.Web.HttpApplicationFactory.EnsureAppStartCalledForIntegratedMode(HttpContext context, HttpApplication app) at System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS(IntPtr appContext, HttpContext context, MethodInfo[] handlers) at System.Web.HttpApplication.InitSpecial(HttpApplicationState state, MethodInfo[] handlers, IntPtr appContext, HttpContext context) at System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr appContext, HttpContext context) at System.Web.Hosting.PipelineRuntime.InitializeApplication(IntPtr appContext) The HTTP request is unauthorized with client authentication scheme 'Negotiate'. The authentication header received from the server was 'Negotiate oXIwcKADCgEBomkEZ2BlBgkqhkiG9xIBAgIDAH5WMFSgAwIBBaEDAgEepBEYDzIwMTcwODEzMjMyMDE0WqUFAgMNka+mAwIBKakOGwxERVYuQ1NJUk8uQVWqGTAXoAMCAQGhEDAOGwxzYS11bmlmeS1pZGI='. Server stack trace: at System.ServiceModel.Channels.HttpChannelUtilities.ValidateAuthentication(HttpWebRequest request, HttpWebResponse response, WebException responseException, HttpChannelFactory`1 factory) at System.ServiceModel.Channels.HttpChannelUtilities.ValidateRequestReplyResponse(HttpWebRequest request, HttpWebResponse response, HttpChannelFactory`1 factory, WebException responseException, ChannelBinding channelBinding) at System.ServiceModel.Channels.HttpChannelFactory`1.HttpRequestChannel.HttpChannelRequest.WaitForReply(TimeSpan timeout) at System.ServiceModel.Channels.RequestChannel.Request(Message message, TimeSpan timeout) at System.ServiceModel.Dispatcher.RequestChannelBinder.Request(Message message, TimeSpan timeout) at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout) at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation) at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message) Exception rethrown at [0]: at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg) at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type) at Unify.Framework.IStandardPostEngineCollector.RequiredSystemTypes() at Unify.Product.IdentityBroker.IdentityServiceClient.RequiredSystemTypes() at Unify.Connect.Web.ProfiledIdentityServiceClient.RequiredSystemTypes() at Unify.Connect.Web.MvcApplication.Application_Start() The remote server returned an error: (401) Unauthorized. at System.Net.HttpWebRequest.GetResponse() at System.ServiceModel.Channels.HttpChannelFactory`1.HttpRequestChannel.HttpChannelRequest.WaitForReply(TimeSpan timeout) The target principal name is incorrect at System.Net.NTAuthentication.GetOutgoingBlob(Byte[] incomingBlob, Boolean throwOnError, SecurityStatus& statusCode) at System.Net.NTAuthentication.GetOutgoingBlob(String incomingBlob) at System.Net.NegotiateClient.DoAuthenticate(String challenge, WebRequest webRequest, ICredentials credentials, Boolean preAuthenticate) at System.Net.NegotiateClient.Authenticate(String challenge, WebRequest webRequest, ICredentials credentials) at System.Net.AuthenticationManagerDefault.Authenticate(String challenge, WebRequest request, ICredentials credentials) at System.Net.AuthenticationState.AttemptAuthenticate(HttpWebRequest httpWebRequest, ICredentials authInfo) at System.Net.HttpWebRequest.CheckResubmitForAuth() at System.Net.HttpWebRequest.CheckResubmit(Exception& e, Boolean& disableUpload) Request information: Request URL: http://localhost:8200/ Request path: / User host address: ::1 User: Is authenticated: False Authentication Type: Thread account name: IIS APPPOOL\UNIFYIdentityBroker Thread information: Thread ID: 12 Thread account name: IIS APPPOOL\UNIFYIdentityBroker Is impersonating: False Stack trace: at System.Web.HttpApplicationFactory.EnsureAppStartCalledForIntegratedMode(HttpContext context, HttpApplication app) at System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS(IntPtr appContext, HttpContext context, MethodInfo[] handlers) at System.Web.HttpApplication.InitSpecial(HttpApplicationState state, MethodInfo[] handlers, IntPtr appContext, HttpContext context) at System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr appContext, HttpContext context) at System.Web.Hosting.PipelineRuntime.InitializeApplication(IntPtr appContext) Custom event details:
Hi Ben
This issue is a little tricky to troubleshoot as we've not seen this before and isn't something that can be reproduce in a test environment, but have something for you to try.
In both the Unify.Service.Connect.exe.config and the web.config files, find the system.serviceModel
element and nested within that find <transport clientCredentialType="Windows" />
and change the Windows
value to Ntlm
. Restart the website and the IdB service.
Let us know of the outcome.
LogWriter Object reference not set to an instance of an object.
Hi all,
I receivied the below error in the logs
The 'Error Email Log Writer' log writer - with an id of 'd807b535-f176-40f3-88bd-1105aaed5001' - has been disabled and will no longer actively write log entries. The configuration of this log writer may need to be updated. For more details please see, System.NullReferenceException: Object reference not set to an instance of an object. at Unify.Product.IdentityBroker.LDAPEngineTaskCompletedEvent.GetLogEntryData() at Unify.Framework.Notification.TaskEvent.GetLogEntry() at Unify.Framework.Notification.LogWriterSink.InnerNotify(ILogEntryNotification message) at Unify.Framework.Notification.LogWriterSinkBase.Notify(ILogEntryNotification message)
UNIFY Identity Broker Management Studio - v5.1.0 Revision #2
Sorry Ben, the patch included a fix for an unrelated issue that would also require an update to another DLL. I've instead rolled the patch back to the RTM to remove unrelated changes. This should hopefully do the trick: Unify.IdentityBroker.LDAP.Engine.Notification.dll
Global Aderant Expert Connector failed with reason String or binary data would be truncated.
Unify Identity Broker: 4.1.x;
Unify Identity Broker Connector for Expert: v4.1.x;
Unify Identity Broker Connector for Microsoft FIM : v4.1.x.
Backround information:
I added a new field (HP Telephone Number) in Expert and created the field in FIM. The attribute is already present in IDB
The phone number field seems to be already part of the schema in the Global Expert Connector:
Length of field in Expert:
I added a rule to trim the spaces from the phone number when it gets imported into MV from MDR, and re-ran the export/import/sync for Global Expert, and the issue is still the same.
In FIM it looks like the Exports go through, but when you re-import and re-sync, the values don’t get re-imported.
Detailed error:
Error1:
The extensible extension returned an unsupported error. The stack trace is: "System.Exception: Error occurred when attempting to save entity with distinguished name UID=53864 Error: Cannot insert duplicate key row in object 'dbo.TBM_PERSNL_GL' with unique index 'TBM_PERSNL_GL2'. The duplicate key value is (50014997, 64). The statement has been terminated. at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning() at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString) at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async) at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result) at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe) at System.Data.SqlClient.SqlCommand.ExecuteNonQuery() at System.Data.Linq.SqlClient.SqlProvider.Execute(Expression query, QueryInfo queryInfo, IObjectReaderFactory factory, Object[] parentArgs, Object[] userArgs, ICompiledSubQuery[] subQueries, Object lastResult) at System.Data.Linq.SqlClient.SqlProvider.ExecuteAll(Expression query, QueryInfo[] queryInfos, IObjectReaderFactory factory, Object[] userArguments, ICompiledSubQuery[] subQueries) at System.Data.Linq.SqlClient.SqlProvider.System.Data.Linq.Provider.IProvider.Execute(Expression query) at System.Data.Linq.ChangeDirector.StandardChangeDirector.DynamicUpdate(TrackedObject item) at System.Data.Linq.ChangeDirector.StandardChangeDirector.Update(TrackedObject item) at System.Data.Linq.ChangeProcessor.SubmitChanges(ConflictMode failureMode) at System.Data.Linq.DataContext.SubmitChanges(ConflictMode failureMode) at Unify.Product.IdentityBroker.AderantExpert8EmployeeConnector.SaveEntities(IEnumerable`1 entities) at Unify.Product.IdentityBroker.EventNotifierUpdatingConnectorDecorator.UpdateEntities(IEnumerable`1 entities) at Unify.Product.IdentityBroker.Adapter.UpdateEntities(IEnumerable`1 entities, EntityToConnectorEntityBridge[]& connectorEntities) at Unify.Product.IdentityBroker.Adapter.UpdateEntities(IEnumerable`1 entities) at Unify.Product.IdentityBroker.AdapterNotifierDecoratorBase`1.UpdateEntity(IAdapterEntity entityToSave) at Unify.Product.IdentityBroker.LDIFAdapterBase.HandleExportUpdate(IAdapter adapter, IAdapterEntitySaveChange pendingUpdate, IDictionary`2 getEntityCache) at Unify.Product.IdentityBroker.LDIFAdapterBase.ExportChanges(ExportedLDIFForAdapter exportedLdifForAdapter) at SyncInvokeExportChanges(Object , Object[] , Object[] ) at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs) at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc) at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc) at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage31(MessageRpc& rpc) at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet) at Unify.Product.IdentityBroker.IdentityBrokerManagementAgentProxy.ExportEntry(ModificationType modificationType, String[] changedAttributes, CSEntry csentry) Forefront Identity Manager 4.1.3508.0"
Error 2:
Update entities to connector failed. Update entities [Count:1] to connector Global Aderant Expert Connector failed with reason String or binary data would be truncated. The statement has been terminated.. Duration: 00:00:00.2910291 Error details: System.Data.SqlClient.SqlException (0x80131904): String or binary data would be truncated. The statement has been terminated. at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning() at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString) at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async) at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result) at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe) at System.Data.SqlClient.SqlCommand.ExecuteNonQuery() at System.Data.Linq.SqlClient.SqlProvider.Execute(Expression query, QueryInfo queryInfo, IObjectReaderFactory factory, Object[] parentArgs, Object[] userArgs, ICompiledSubQuery[] subQueries, Object lastResult) at System.Data.Linq.SqlClient.SqlProvider.ExecuteAll(Expression query, QueryInfo[] queryInfos, IObjectReaderFactory factory, Object[] userArguments, ICompiledSubQuery[] subQueries) at System.Data.Linq.SqlClient.SqlProvider.System.Data.Linq.Provider.IProvider.Execute(Expression query) at System.Data.Linq.ChangeDirector.StandardChangeDirector.DynamicUpdate(TrackedObject item) at System.Data.Linq.ChangeDirector.StandardChangeDirector.Update(TrackedObject item) at System.Data.Linq.ChangeProcessor.SubmitChanges(ConflictMode failureMode) at System.Data.Linq.DataContext.SubmitChanges(ConflictMode failureMode) at Unify.Product.IdentityBroker.AderantExpert8EmployeeConnector.SaveEntities(IEnumerable`1 entities) at Unify.Product.IdentityBroker.EventNotifierUpdatingConnectorDecorator.UpdateEntities(IEnumerable`1 entities) at Unify.Product.IdentityBroker.Adapter.UpdateEntities(IEnumerable`1 entities, EntityToConnectorEntityBridge[]& connectorEntities) at Unify.Product.IdentityBroker.Adapter.UpdateEntities(IEnumerable`1 entities) at Unify.Product.IdentityBroker.AdapterNotifierDecoratorBase`1.UpdateEntity(IAdapterEntity entityToSave) at Unify.Product.IdentityBroker.LDIFAdapterBase.HandleExportUpdate(IAdapter adapter, IAdapterEntitySaveChange pendingUpdate, IDictionary`2 getEntityCache) at Unify.Product.IdentityBroker.LDIFAdapterBase.ExportChanges(ExportedLDIFForAdapter exportedLdifForAdapter) at SyncInvokeExportChanges(Object , Object[] , Object[] ) at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs) at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc) at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc) at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage31(MessageRpc& rpc) at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)
When I kick off Exports from FIM Global Expert MA, they seem to
go through ok, but when re-imported, “data has not been re-imported” issues
comes up every time for the HPPhoneNumber field.
When manually updated a record in Expert with a phone number (using ID Broker sql account), there are no issues.
Hi Curtis, I had a look at the errors and it clearly sending 20+ chars for Phone_No where as the allowed length in Target is 17. So I have mentioned this to Client and they will fix it up in the source.
Import all entities from connector Chris21 Secondment Connector failed with reason Result record does not contain the required "status" attribute.
Unify Identity Broker: 4.1.x
Unify Identity Broker Connector for chris21 :v4.1.x
Getting this error while importing all from Secondment Connector
Detailed error: status="ok" expected. Line GTR,S60W71E1R U1903R54 3812 177M33II26S1 03:cbr="zsmlst",sendfields="D",showtranslation="s",filter01="zsmenddate:GE:2017-06-06:or",filter02="zsmenddate:EQ::",maxlines="1000",detnumber="10122",detnumber.trn="Dare H",zsmstartdt="2012-10-01",zsmenddate,zsmscdmthr="35.00",zsmcompany,zsmreptnam,zsmexplnth,zsmchgrate=" Chris21 GTR returned no additional error messages.. Duration: 00:00:02.4782478 Error details: System.IO.InvalidDataException: Result record does not contain the required "status" attribute. status="ok" expected. Line GTR,S60W71E1R U1903R54 3812 177M33II26S1 03:cbr="zsmlst",sendfields="D",showtranslation="s",filter01="zsmenddate:GE:2017-06-06:or",filter02="zsmenddate:EQ::",maxlines="1000",detnumber="10122",detnumber.trn="Dare H",zsmstartdt="2012-10-01",zsmenddate,zsmscdmthr="35.00",zsmcompany,zsmreptnam,zsmexplnth,zsmchgrate=" Chris21 GTR returned no additional error messages. at Unify.Product.IdentityBroker.Chris21Agent.CheckStatusAttribute(IChris21CommandLine chris21GtrCommandLine) at Unify.Product.IdentityBroker.Chris21Agent.ExtractListResult(ICollection`1 entities, IChris21Record record, IChris21ConnectorInformation connectorRequest) at Unify.Product.IdentityBroker.Chris21Agent.<listwithchunking>d__4.MoveNext() at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext() at Unify.Framework.Collections.ActionOnExceptionEnumerator`1.MoveNext() at Unify.Framework.Collections.EnumerableExtensions.<actiononlast>d__10`1.MoveNext() at Unify.Framework.Collections.EnumerableExtensions.<produceautopages>d__7`1.MoveNext() at Unify.Framework.Visitor.ThreadsafeVisitorEvaluator`1.Visit() at Unify.Product.IdentityBroker.RepositoryChangeDetectionWorkerBase.PerformChangeDetection(IEnumerable`1 connectorEntities) at Unify.Product.IdentityBroker.ChangeDetectionImportAllJob.ImportAllChangeProcess() at Unify.Product.IdentityBroker.ChangeDetectionImportAllJob.RunBase() at Unify.Framework.DefinedScopeJobAuditTrailJobDecorator.Run() at Unify.Product.IdentityBroker.ConnectorJobExecutor.<>c__DisplayClass27_0.<run>b__0() at Unify.Framework.AsynchronousJobExecutor.PerformJobCallback(Object state)</run></produceautopages></actiononlast></listwithchunking>
The emp id of 10122 terminated 30/6/2015. Not sure if this helps?
Also this particular secondment record has no end date
The connector checks that there is a status="ok" in each entry. I can't see how end date could have any impact on this. Try running the query in the GTR form for a couple of different forms and compare the output.
Duplicate Key Calculating target to source look up
Hi, I'm seeing this error when doing a baseline sync from a locker to AD.
This solution has previously had "An item with the same key has already been added." errors but I'm not sure what this error means.
Unify.Framework.UnifyDataException: Duplicate key calculating target to source id lookup: 138db3b0-4197-4bee-bd1a-010830bebd1d
at Unify.Product.Plus.DeprovisioningExecutor`2.TargetIdToSourceIdLookupKeyClash(Guid key, Guid value, IConnection original)
at Unify.Framework.Collections.EnumerableExtensions.ToDictionaryWithKeyClashError[TKey,TValue,TOriginal](IEnumerable`1 originalEnumerable, Func`2 keySelector, Func`2 valueSelector, Action`3 duplicateAction)
at Unify.Product.Plus.DeprovisioningExecutor`2.Execute(IEnumerable`1 page)
at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()
at System.Linq.Buffer`1..ctor(IEnumerable`1 source)
at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
at Unify.Product.Plus.AdapterToLockerProvisioner.Execute(Func`3 generateAndMapTarget, IDictionary`2 changesDict)
at Unify.Product.Plus.LinkSynchronizer`2.JoinAndMap(IEnumerable`1 filterResult, IDictionary`2 changesDict)
at Unify.Product.Plus.Link.SynchronizeChanges[TSourceEntity,TTargetEntity](IEnumerable`1 changes, IEnumerable`1 syncTasks, Func`1 getTargetContextAccessor, IConnectionsContext connectionContext, ISynchronizationHelper`2 helper, IProvisioner`2 provisioner)
at Unify.Product.Plus.Link.SynchronizeAdapterChanges(IEnumerable`1 changes)
at Unify.Product.Plus.LinkNotifierDecorator.<>c__DisplayClass42_0.<SynchronizeAdapterChanges>b__0()
at Unify.Framework.Notification.NotifierDecoratorBase.Notify[TResult](ITaskNotificationFactory notificationFactory, Func`1 function)
at Unify.Product.Plus.LinkNotifierDecorator.SynchronizeAdapterChanges(IEnumerable`1 changes)
at Unify.Product.Plus.LinkAuditingDecorator.SynchronizeAdapterChanges(IEnumerable`1 changes)
at Unify.Product.Plus.AdapterToLockerSynchronizationJob.RunBase()
at Unify.Product.Plus.SynchronizationJobExecutor.<ThreadAction>d__8.MoveNext()",Normal
This issue is most commonly caused by "broken" connections - connections between locker entities and adapter entities where the adapter entity has since been deleted, and the connection wasn't properly deleted.
You can find such entities with a SQL query like
SELECT * FROM [Connections] [c] LEFT JOIN [Entity] [e] ON [c].[AdapterEntityId] = [e].[EntityId] WHERE [e].[EntityId] IS NULL AND [c].[LinkId] = 'your-link-id'
Deleting any connections identified by that with the following query should resolve the issue.
DELETE FROM [Connections] WHERE [ConnectionsKey] IN ( SELECT [ConnectionsKey] FROM [Connections] [c] LEFT JOIN [Entity] [e] ON [c].[AdapterEntityId] = [e].[EntityId] WHERE [e].[EntityId] IS NULL AND [c].[LinkId] = 'your-link-id' )
Alternatively, clearing the adapter context and re-generating the entities should clear up the connections.
We will need to investigate the cause of the broken connections.
Identity Broker CRM Connector Exported Changes are Not Appearing in CRM
Previous Version: Microsoft Dynamics CRM Connector v4.1.1.1
Upgraded Version: Microsoft Dynamics CRM Connector v5.1.0.1
Observing a strange behaviour after the Connector upgrade. Exports are successful from IdB and FIM point of view but the changes are not reflected in CRM.
The above mentioned behaviour is happening only for new users/records or if the attribute is "Null" or blank in CRM. Changes are appearing correctly if the attribute is already populated with something (existing contact/record).
Please advise what details you need to troubleshoot this issue.
I already performed the following:
- Checked the IdB logs but couldn't find any errors
- Checked with the CRM team
- Captured the TCP traffic but found the SOAP message is pretty much encrypted
Hi Aneesh,
Here is a patch that should hopefully resolve this issue. Could you backup (to a different location) and replace the Unify.IdentityBroker.Communicator.DynamicsCRM.dll that is currently in the Identity Broker/Services directory with the patched version below.
Value bp is not a valid hexadecimal number
Running a Delta import and Delta Sync from IdB Sharepoint connector and get the error below. Ran a Full Import and Full Synchronization & the error did not occur. Ran a Delta import and Delta Sync again and error does not occur.
Not sure if I'll be able to replicate again, but raising regardless.
The extensible extension returned an unsupported error.
The stack trace is:
"System.ArgumentException: Value bp is not a valid hexadecimal number.
Parameter name: sourceValue
at Unify.Framework.IO.DNComponentAttributeValueParserAdapter.Transform(String sourceValue)
at Unify.Framework.IO.DistinguishedNameComponent.CreateDNComponent(String dnComponentString)
at Unify.Framework.IO.DistinguishedNameConversionFromString.CreateDistinguishedName()
at Unify.Product.IdentityBroker.ImportProxy.GetContainerName(String dn)
at Unify.Product.IdentityBroker.ImportProxy.TryGetObjectClass(String dn, String& objectClass)
at Unify.Product.IdentityBroker.ImportProxy.<EntryToDeltas>d__25.MoveNext()
at System.Linq.Enumerable.<SelectManyIterator>d__16`2.MoveNext()
at System.Linq.Enumerable.<SelectManyIterator>d__16`2.MoveNext()
at Unify.Product.IdentityBroker.ExtensionMethods.Take[TSource](IEnumerator`1 source, Int32 count, IList`1& items)
at Unify.Product.IdentityBroker.ExtensionMethods.<Page>d__3`1.MoveNext()
at Unify.Product.IdentityBroker.ImportProxy.Import(GetImportEntriesRunStep importRunStep)
at Unify.Product.IdentityBroker.UnifyLdapConnectorTypeProxy.GetImportEntries(GetImportEntriesRunStep importRunStep)
at Unify.Product.IdentityBroker.UnifyLdapConnector.GetImportEntries(GetImportEntriesRunStep importRunStep)
Forefront Identity Manager 4.4.1459.0"
Hi Matt,
Thanks for raising this. This looks to be the same issue as DN Creation not escaping LDAP Reserved Characters. I've created a new build of the Identity Broker for Microsoft Identity Manager management agent which includes the fix from there, attached here: Unify.IdentityBroker.FIMAdapter.dll. Please update the DLL in the FIM Extensions directory and re-attempt the import.
Given_Names not appearing in Connector
Given_Names is included in Schema of the Aurion Connector. I can see the attribute has values in Wireshark packet trace as seen below, but no objects have a value in the attribute in the connector.
<AQT_Output>
<Employee_Number>546</Employee_Number>
<Person_Number>546</Person_Number>
<Surname>Lord</Surname>
<Given_Names>Dale Brendan</Given_Names>
<Preferred_Name>Dale</Preferred_Name>
<Salutation>Mr</Salutation>
<Person_Type>EMPLOYEE</Person_Type>
<Employment_Type_Code>CA</Employment_Type_Code>
<Actual_Position_Number>L42368V</Actual_Position_Number>
<Actual_Organisation_Unit_Number>426</Actual_Organisation_Unit_Number>
<Date_Commenced>01-JUL-1999</Date_Commenced>
<Date_Terminated></Date_Terminated>
<Contract_Expiry_Date></Contract_Expiry_Date>
<Leave_Date_From></Leave_Date_From>
<Leave_Date_To></Leave_Date_To>
<Leave_Type_Code></Leave_Type_Code>
<Organisation_Unit_Level_01>APRA Members</Organisation_Unit_Level_01>
<Organisation_Unit_Level_02>Specialised Institutions</Organisation_Unit_Level_02>
<Organisation_Unit_Level_03>Sth West-Melb (SID)</Organisation_Unit_Level_03>
<Primary_Cost_Code>SID310</Primary_Cost_Code>
<Attendance_Type_Code>FULL</Attendance_Type_Code>
<Actual_Location_Code>MELB</Actual_Location_Code>
</AQT_Output>
The resource cannot be found - /Account/LogOn
Using
- IdB service v4.1.5.5
- IdB for Microsoft Active Directory 4.1.2.1
- IdB for PeopleSoft Connector 4.1.0.0
- IdB for FIM 4.0.0.3
* Note - About page incorrectly showing this: "UNIFY Identity Broker Management Studio, v0.0.5 Revision #5" ... can't explain this!
The following error is thrown when starting on the ABOUNT page (/About) and clicking on the Identity Btroker home page image to return to the dashboard.
The resource cannot be found.
Description: HTTP 404. The resource you are looking for (or one of its dependencies) could have been removed, had its name changed, or is temporarily unavailable. Please review the following URL and make sure that it is spelled correctly.
Requested URL: /Account/LogOn
The URL for this page is as follows:
http://localhost:8008/Account/LogOn?ReturnUrl=%2f
I am running IdB under IIS. Navigating directly to the home page (by removing everything after the 8008 port number in the URL) also fails - only works after I put in a trailing ?, i.e.
I am using a clean install of IdB 4.1, using the extensibility files from the (to be retired) existing v4.1.4 RTM version.
Please try updating the authentication node in the web.config to:
<authentication mode="Windows" />
Updates to IdMParentProfileReference not being saved
The format of IdMParentProfileReference attribute has changed due to new IdB DNs structure. The DN is not saving however. No error is thrown, just get an exported change is not re-imported error.
See latest v5.1.1 DEV build (not in place upgrade as the version hasn't updated). There's a new setting on the org connector for the org adapter.
Customer support service by UserEcho