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.

0
Fixed

Cannot update LocationSurname

Carol Wapshere 3 months ago in UNIFYBroker/Micro Focus Content Manager • updated by Beau Harrison 3 months ago 4

Exporting LocationSurname to CM v9 is not working. The CM API returns no error, it just doesn't update the Surname.

I have successfully updated other attributes including LocationGivenNames, LocationJobDescription, LocationEmailAddress, LocationPhoneNumber and LocationIdNumber.

Some emailing around with the customer has revealed that they had a similar problem trying to bulk load data into the UAT environment using the "Data Loader". Someone thinks that the "Unique Name" field must be provided with the upload data when using a CSV file, and that this is a recent change in CM. (I have been unable to verify this and have no idea if the same issue would affect the API.)

I did try setting the LocationNickname as well (which is titled "Unique Name" in the API doco). I can also set this field but it doesn't make any difference to the Surname. I tried both:

- Setting the NickName then attempting to update the Surname on a subsequent export

- Setting the NickName and the Surname at the same time

For both the NickName was set, but the Surname did not change in CM.

Answer
Beau Harrison 3 months ago

Hi Carol

The LocationSurname is a composite field of LocationSurnamePrefix and LocationSurnameNoPrefix. In the API explorer, it is possible to set the LocationSurname field and the Prefix and NoPrefix fields are updated as needed. The CM client library, however, seems to block the ability to set LocationSurname, presumably because if you assign a no-prefix surname to LocationSurname instead of LocationSurnameNoPrefix, any value in LocationSurnamePrefix is lost.

To set the surname you'll have to use the LocationSurnamePrefix and LocationSurnameNoPrefix fields. Consider LocationSurname a readonly field, it will be by default in the next release.

0
Answered

Associations Connector fails with "Only one use of each socket address is normally permitted"

Carol Wapshere 3 months ago in UNIFYBroker/Micro Focus Content Manager • updated 3 months ago 15

We have just put a solution in UAT that was working correctly in Dev. The two Locations connectors (Person and Organization) have imported fine. The Associations connector runs for a couple of minutes then fails with the error below.

I have asked the CM admin to look for service API errors on their side, but also wanted to ask: does the Associations connector make multiple connections that could be over-lapping?

Change detection engine import all items failed.
Change detection engine import all items for connector CM Associations failed with reason Unable to connect to the remote server. Duration: 00:01:38.0443655
Error details:
System.Net.WebException: Unable to connect to the remote server ---> System.Net.Sockets.SocketException: Only one usage of each socket address (protocol/network address/port) is normally permitted 10.111.200.11:80
at System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress)
at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Exception& exception)
--- End of inner exception stack trace ---
at System.Net.HttpWebRequest.GetResponse()
at ServiceStack.ServiceClientBase.Send[TResponse](String httpMethod, String relativeOrAbsoluteUrl, Object request)
at Unify.Product.IdentityBroker.HPTrimV9WebCommunicator.<getalllocationuris>d__36.MoveNext()
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.IdentityBroker.HPTrimV9WebCommunicator.InnerGetAssociations(IEnumerable`1 uri, IEnumerable`1 relationshipTypes, Int32 pageSize, IWebServiceCommunicatorInformation information, CancellationToken token)
at Unify.Product.IdentityBroker.HPTrimV9WebCommunicator.GetAllAssociations(IEnumerable`1 relationshipTypes, Guid connectorId, String searchQuery, Int32 pageSize, IWebServiceCommunicatorInformation information, CancellationToken cancellationToken)
at Unify.Product.IdentityBroker.HPTrimWebCommunicatorDecorator.GetAllAssociations(IEnumerable`1 relationshipTypes, Guid connectorId, String searchQuery, Int32 pageSize, IWebServiceCommunicatorInformation information, CancellationToken cancellationToken)
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at Unify.Product.IdentityBroker.HPTrimWebCommunicatorDecorator.GetAllAssociations(IEnumerable`1 relationshipTypes, Guid connectorId, String searchQuery, Int32 pageSize, IWebServiceCommunicatorInformation information, CancellationToken cancellationToken)
at Unify.Product.IdentityBroker.HpTrimAgent.GetAllAssociations(IEnumerable`1 relationshipTypes, Guid connectorId, String searchQuery, Int32 pageSize, CancellationToken cancellationToken)
at Unify.Product.IdentityBroker.HpTrimAssociationsConnector.GetAllEntities(IStoredValueCollection storedValueState, CancellationToken cancellationToken)
at Unify.Product.IdentityBroker.ConnectorToReadingConnectorBridge.GetAllEntities(IStoredValueCollection storedValueState, CancellationToken cancellationToken)
at Unify.Product.IdentityBroker.AuditReadingConnectorDecorator.GetAllEntities(IStoredValueCollection storedValues, CancellationToken cancellationToken)
at Unify.Product.IdentityBroker.EventNotifierReadingConnectorDecoratorBase`1.GetAllEntities(IStoredValueCollection storedValues, CancellationToken cancellationToken)
at Unify.Product.IdentityBroker.ChangeDetectionImportAllJob.ImportAllChangeProcess()
at Unify.Product.IdentityBroker.ChangeDetectionImportAllJob.RunBase()
at Unify.Framework.DefinedScopeJobAuditTrailJobDecorator.Run()
at Unify.Product.IdentityBroker.ConnectorJobExecutor.<>c__DisplayClass30_0.<run>b__0()
at Unify.Framework.AsynchronousJobExecutor.PerformJobCallback(Object state)
</run></getalllocationuris>
Answer
Beau Harrison 3 months ago

Is there any association fields on the connector that are not needed? The connector needs to make a call per field, per location, so cutting the connector schema to only what's needed would greatly reducing the number of calls being made. This may be enough to be a temporary work around while I look into this issue further.

0
Answered

HPE CM Associations Connector

Carol Wapshere 4 months ago in UNIFYBroker/Micro Focus Content Manager • updated by Beau Harrison 4 months ago 6

I think I need to use this connector - I have to create reference relationships between location objects.

I create a new connector and select this type. The schema provided is exactly the same as for the Locations connector - surely this is wrong? I went with the default schema and ran an Import All - and I just got the list of Locations. So firstly - there may be something wrong with this connector as it doesn't do anything differently to the Locations connector.

I have looked at the KB pages about this connector but they are very high level and don't tell me how to set them up.

Do we have a working config I can look at? Specifically I need to:

- set up the parent-child relationship between Organizations

- add people to organizations

- set person Supervisor

Answer
Beau Harrison 4 months ago

Release is up now in the usual place. Version v5.3.1

0
Fixed

HPE Content Manager import all fails with Object reference not set to an instance of an object

Carol Wapshere 4 months ago in UNIFYBroker/Micro Focus Content Manager • updated by Beau Harrison 4 months ago 3

Getting the following error when running a full import from HPE Content Manager.

Change detection engine import all items failed.
Change detection engine import all items for connector CM Persons failed with reason Object reference not set to an instance of an object.. Duration: 00:00:04.3124780
Error details:
System.NullReferenceException: Object reference not set to an instance of an object.
at Unify.Product.IdentityBroker.HPTrimV9WebCommunicator.<>c.<RestWorkaround>b__43_0(RestLocationResult result)
at System.Linq.Enumerable.WhereArrayIterator`1.MoveNext()
at Unify.Product.IdentityBroker.HPTrimV9WebCommunicator.RestWorkaround(IWebServiceCommunicatorInformation information, IEnumerable`1 fields, Boolean includeAccessControls, String searchQuery, Int32 pageSize)
at Unify.Product.IdentityBroker.HPTrimV9WebCommunicator.<InnerGetLocations>d__30.MoveNext()
at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()
at Unify.Framework.Collections.EnumerableExtensions.<ActionOnLast>d__10`1.MoveNext()
at System.Linq.Buffer`1..ctor(IEnumerable`1 source)
at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
at Unify.Product.IdentityBroker.AuditReadingConnectorDecorator.GetAllEntities(IStoredValueCollection storedValues, CancellationToken cancellationToken)
at Unify.Product.IdentityBroker.EventNotifierReadingConnectorDecoratorBase`1.GetAllEntities(IStoredValueCollection storedValues, CancellationToken cancellationToken)
at Unify.Product.IdentityBroker.ChangeDetectionImportAllJob.ImportAllChangeProcess()
at Unify.Product.IdentityBroker.ChangeDetectionImportAllJob.RunBase()
at Unify.Framework.DefinedScopeJobAuditTrailJobDecorator.Run()
at Unify.Product.IdentityBroker.ConnectorJobExecutor.<>c__DisplayClass30_0.<Run>b__0()
at Unify.Framework.AsynchronousJobExecutor.PerformJobCallback(Object state)

I’ve tried clearing the connector and running the import again, but get the same thing.

Answer
Beau Harrison 4 months ago

Hi Carol

Here is a patch for you to try. Please install and rerun the failing operation. It should replace the patch Curtis provided last week.

Unify.IdentityBroker.Communicator.HPTrim.We....dll

0
Answered

What web services have to be set up to support provisioning/sync of users and locations to HPRM 8.3?

I am looking at https://voice.unifysolutions.net/knowledge-bases/7-unifybroker-knowledge/categories/95-unifybrokermicro-focus-content-manager/articles but it is not clear what the customer has to set up to allow me to fulfill the following requirements for provisioning and sync to HPRM 8.3:

  • Add/sync location
  • Assign a location to a parent location
  • Add sync user
  • Assign a user to a location
Answer

Hi Bob

I've updated the prerequisites page to hopefully be more clear. 

https://voice.unifysolutions.net/knowledge-bases/7/articles/3099-unifybrokermicro-focus-content-manager-prerequisites

Does this answer your question?

0
Answered

HPRM provisioning error

Paul Zelenewicz 6 months ago in UNIFYBroker/Micro Focus Content Manager • updated by Beau Harrison 6 months ago 3

UNIFYBroker 5.3.1

HP Trim Connector 5.3.0.0

Currently getting the following error on user provision to HPRM:


System.ArgumentException: Could not parse uri string
"genericuser" to long value for setting uri of reference field
LocationUseProfileOf.
   at
Unify.Product.IdentityBroker.RequestFactory`2.SetLocationPropertyRefValue[TRef](PropertyIds
propertyId, IConnectorEntity data, Func`1 createRef, Action`1 assign)
   at
Unify.Product.IdentityBroker.LocationRequestFactory.CreateComponent(ILocationRequestFactoryInformation
info)
   at
Unify.Product.IdentityBroker.HPTrimV8WebRequests.AddLocationRequest(IConnectorEntity
data)
   at
Unify.Product.IdentityBroker.HPTrimV8WebCommunicator.AddLocations(IEnumerable`1
data, Guid connectorId, IWebServiceCommunicatorInformation information,
CancellationToken cancellationToken)
   at
Unify.Product.IdentityBroker.HPTrimWebCommunicatorDecorator.AddLocations(IEnumerable`1
data, Guid connectorId, IWebServiceCommunicatorInformation information,
CancellationToken cancellationToken)
--- End of stack trace from previous location where
exception was thrown ---
   at
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at
Unify.Product.IdentityBroker.HPTrimWebCommunicatorDecorator.AddLocations(IEnumerable`1
data, Guid connectorId, IWebServiceCommunicatorInformation information,
CancellationToken cancellationToken)

I suspect that this is due to a user with the URI of 'genericuser' not existing within HPRM. 

Can you please confirm.

0
Completed

Add Ability to include query parameters

Matthew Davis 2 years ago in UNIFYBroker/Micro Focus Content Manager • updated by anonymous 2 years ago 2

Currently the default query for Import All is "*"

In TRIM, you can drill this down, such as "login:*" to get all users with a populated login attribute.

Would it be possible to add the ability to fill in a query string on the connector page, which - when filled, would override the "*" sent to the endpoint? 


I've tested this with the REST v8 and confirmed it works. Personally I need this for v4.1 but can see it being useful for newer connectors also.

Answer
anonymous 2 years ago

Feature implementation complete and is included in the following releases:

  • v4.1.1 RC3
  • v5.0.1 RC3
  • v5.1.0 RC6
  • v5.2.0 RC4
0
Completed

Add support for relationships between location objects.

Add the ability to create, read, update and delete all of the possible associations (i.e. "member of", "supervised by", "supervisor of", "delegate of", "has delegates", and "administrator of").

See comment on IDBTRIM-3 for further details.