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.
Issue installing 5.3 over the top of 5.2
I'm having an issue after installing 5.3 over 5.2.
The details are as follows:
"
After installing 5.3 over the top of 5.2 I get a sitemap issue.
================
The site map provider was of type System.Web.XmlSiteMapProvider. The web.config should be configured to use type="Unify.Connect.Web.IdentityBrokerSiteMapProvider".
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: Unify.Framework.UnifyConfigurationException: The site map provider was of type System.Web.XmlSiteMapProvider. The web.config should be configured to use type="Unify.Connect.Web.IdentityBrokerSiteMapProvider".
================
Broker is set up to use IIS for the web interface
"
The stack trace is as follows:
"
[UnifyConfigurationException: The site map provider was of type System.Web.XmlSiteMapProvider. The web.config should be configured to use type="Unify.Connect.Web.IdentityBrokerSiteMapProvider".]
Unify.Connect.Web.MvcApplication..cctor() +4876
[TypeInitializationException: The type initializer for 'Unify.Connect.Web.MvcApplication' threw an exception.]
ASP.global_asax..ctor() +28
[TargetInvocationException: Exception has been thrown by the target of an invocation.]
System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandleInternal& ctor, Boolean& bNeedSecurityCheck) +0
System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark) +197
System.Activator.CreateInstance(Type type, Boolean nonPublic) +105
System.RuntimeType.CreateInstanceImpl(BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, StackCrawlMark& stackMark) +1484
System.Activator.CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes) +289
System.Activator.CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture) +27
System.Web.HttpRuntime.CreateNonPublicInstance(Type type, Object[] args) +79
System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr appContext, HttpContext context) +294
System.Web.Hosting.PipelineRuntime.InitializeApplication(IntPtr appContext) +333
[HttpException (0x80004005): Exception has been thrown by the target of an invocation.]
System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +525
System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +124
System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +719
"
Let me know if you need any further information.
Thanks,
Hayden
There can be client specific things in there, but the default should be fine (especially if you're running without one). If the client decides to configure more settings they can (e.g. OIDC for the UI and AAD bearer auth for the API).
Remove the need for a VPN tunnel for hybrid IdB deployments
Implement Azure Relay Hybrid Connections (or commercial equivalent) https://docs.microsoft.com/en-us/azure/service-bus-relay/relay-hybrid-connections-protocol
Powershell transform showing an error IdB 5.2
Since updating to 5.2 I've noticed that the one Powershell transform I'm using in an adapter is now displaying an error message in the UI, though the transform itself still looks to be functioning. Here's the error displayed in the UI:
System.NullReferenceException: Object reference not set to an instance of an object. at Unify.Connect.Web.TransformationControllerExtensions.<navigatetodisplay>d__16`2.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult() at Unify.Connect.Web.DefaultTransformationController.<display>d__2.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at lambda_method(Closure , Task ) at System.Web.Mvc.Async.TaskAsyncActionDescriptor.EndExecute(IAsyncResult asyncResult) at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass34.<begininvokeasynchronousactionmethod>b__33(IAsyncResult asyncResult) at System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<invokeactionmethodfilterasynchronouslyrecursive>b__3c() at System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<>c__DisplayClass45.<invokeactionmethodfilterasynchronouslyrecursive>b__3e() at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass30.<begininvokeactionmethodwithfilters>b__2f(IAsyncResult asyncResult) at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass1e.<>c__DisplayClass28.<begininvokeaction>b__19() at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass1e.<begininvokeaction>b__1b(IAsyncResult asyncResult) </begininvokeaction></begininvokeaction></begininvokeactionmethodwithfilters></invokeactionmethodfilterasynchronouslyrecursive></invokeactionmethodfilterasynchronouslyrecursive></begininvokeasynchronousactionmethod></display></navigatetodisplay>
This is the adapter config:
I have installed a UI patch to IdB 5.2 based on a previous issue I raised.
Matt just reminded me, v5.1 had a spelling error in the name of the PowerShell transformation which was corrected in v5.2. Change the incorrect PoweShell
to the correct PowerShell
.
A task was cancelled
When running connector imports in IdB 5.2 (PowerShell connector) I am seeing a message "A task was cancelled" though there doesn't actually seem to be any problem. MD says this is a known issue but I need to ask for a patch for 5.2.
This is the full error:
System.Threading.Tasks.TaskCanceledException: A task was canceled. at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Unify.Connect.Web.Client.ConnectorClient.d__35.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Unify.Connect.Web.Client.ProfiledConnectorClient.d__108.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Unify.Framework.Web.UnifyController.d__39.MoveNext()
Hi Carol,
Could you please try applying the following patch, and let me know if the issue persists? Patch.zip
SAP HCM Agent - Test connection fails
Environment:
OS : Windows Server 2016
IDB Service: IDB v4.1.5 x64
IDB SAP Broker : v4.1.3 x64
Test connection on SAP HCM Agents returns error below:
An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B)
Troubleshooting done so far:
Current environment with IDB v4.1.3 + IDB SAB Broker v4.1.2 running on Windows 2008 R2 with same credentials and same parameters to connect to SAP instance works without any issues.
IDB Logs have this entry below
The test of agent SAP HCM Agent failed with message System.BadImageFormatException: An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B)
at SAP.Connector.Connection.Open()
at Unify.Product.IdentityBroker.SapHrCommunicator.Open()
at Unify.Product.IdentityBroker.SapHrCommunicator.TestConnection()
at Unify.Product.IdentityBroker.SapHrAgent.TestConnection()
at Unify.Product.IdentityBroker.AgentEngine.Test(Guid agentId).
No errors logged in Event Viewer.
Existing issues:
- https://voice.unifysolutions.net/communities/6/topics/630-sap-connector-v41-badimageformatexception
- https://voice.unifysolutions.net/communities/6/topics/643-can-not-run-sap-connector-badimageformatexception
- https://voice.unifysolutions.net/communities/6/topics/381-error-results-when-connecting-to-sap-hcm-using-sap-hcm-wizard-in-management-studio
Or use the SapHR.Remote.4.1.3.zip package to separate the service from the connectivity to SAP. There's an item in our backlog to migrate this package up to v5+.
Migrating IdentityBroker configuration from one env to another
Database migration will copy both configuration and data. Just wonder how to migration the configuration only without migrating data?
The dimage indicates an add attrib operation, but the attrib already exists on the object.
Identity Broker is occasionally throwing “staging-error” as part of the Delta Import.
Please see the attached files with error logs.
Could you please review and advice?
Version Details:
Identity Broker: v5.1.0 Revision # 2
FIM 2010 R2: 4.1.3508.0
Adam/Richard/Aneesh, please replicate this (it shouldn't need the same systems). The information should be in Aneesh's comments, it's just that the analysis hasn't been done to show why it's a problem. A replication might help us track down the sequence of events that lead to the problem.
Cannot upgrade IsB database - Duplicate key value
Upgrade from 5.1 to 5.2 failed with a SQL error so I elected to run the database update script manually. This is the error:
Msg 1505, Level 16, State 1, Line 1
The CREATE UNIQUE INDEX statement terminated because a duplicate key was found for the object name 'dbo.CollectionKey' and the index name 'DF_CollectionKey_Caption'. The duplicate key value is (HomePostCode).
Msg 1750, Level 16, State 0, Line 1
Could not create constraint. See previous errors.
The statement has been terminated.
I have both "HomePostCode" in a connector and "HomePostcode" (lower-case "c") in an adapter, and IdB did not prevent this happening. I'll rename one of them if I have to but am worried there might be others (lots of schema in this solution).
Shouldn't this script be using the attribute guids anyway?
Hi Carol
Turns out that, yes, the DF_CollectionKey_Caption constraint isn't actually required. If it was created in your database, go ahead and remove it. If it wasn't then no further action is required, the rest of the upgrade script will have executed correctly.
Identity Broker - join transformation priority calculation for decimal types
I have a solution in which we are trying to select a "position" record for a given employee. The method that we a putting in is to check the position end date with the priority option within the join transformation. The timestamp type is not suitable because it would select the closest date not necessarily the further most, however I have access to the value in decimal format (see image)
However this appears to not be selecting the expected record, in this case the expected one is the lower record. Rather it is selecting the top record which seems contrary to the "largest value is selected" description of the priority.
Are you able to explain how IdB choose which record to join on when a decimal value is selected for priority?
The solution to issue that we were experiencing was to remove the priority selection and instead rely on using a rolling window filter set to type "Relevant". The description from the documentation: "A sliding date window which takes the first matching entity inside a window. If no entities can be found inside that window, the first entity after the window will be selected. If still no entities can be found, the first entity before the window will be selected." As seen Here.
Allow for IdB 5.2.1 Plus to be deployed without a Database Connection to support Container based deployments
Most Container based orchestration solutions, including Kubernetes and Docker Compose with Swarm, provide almost no ability to modify the contents of the files in Volumes mounted within Server nodes they deploy.
To simplify deployments, without needing to resort to tools like Puppet, Chef or Ansible to carry out post provisioning tasks such as modifying Connection Strings in XML files, it would be useful to allow IdB to have the Connection String configurable via it's Management API.
Supported with containerization attached volumes.
Customer support service by UserEcho