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.
Home page: Load more connectors ignored after ajax refresh
Clicking the Load more connectors link expands the list of connectors until the page is refreshed by the ajax loader.
Unify.Product.IdentityBroker.AdapterEnginePlugInKey.extensibility.config.xml
Unify.Product.IdentityBroker.ConnectorEnginePlugInKey.extensibility.config.xml
Creation of a new connector - 'dbo' configuration
Creation of a new Connector:
Owner - Had to configure to 'dbo' for some reason, even though Owner was 'domainname\Administrator'
Edit (Adam): This is the owner of the table, in the format of a schema. A default install will have a value of dbo. The UI should be updated so that this is more obvious. Could dynamically get this from the connector as we have the details.
SELECT name, SCHEMA_NAME(schema_id) FROM sys.tables
When is the Adapter's transformation taking place
I would like to get a better understanding/clarification of the sequence of events flow for Identity Broker as to when is the Adapter transformation being process. For example,
- As part of Import in Unify Management Studio or per Connector's getEntity schedule (either a "Full Import" or "Synchronise Import"
- During Adapter Entity Search in Unify Management Studio
- During Import in FIM (either a "Full Import" or "Delta Import")
The Identity Broker's log file seems to indicate that the Adapter activities only take places during the last two events. Thus the reason for this question, as I would like to be able to answer a similar question when asked by customer.
Date-Relational Adapter Configuration Not Saved
When I create a Date-Relational Adapter the RangeEndColumn isn't being saved. It creates fine but when I click back into it the RangeEndKey value returns the default in the drop down list.
This seems to be caused by the configuration not being saved properly as uploaded. The RangeEndKey="00:00:00", it looks like it should equal the field name selected as with RangeStartKey="posstart".
Further, I edited the adapter config manually and restarted. It loaded in correctly so that the correct value was selected in the drop-down box but when I hit submit query then looked again it had changed back to the "00:00:00" value.
Issue4.docx
Google Apps Groups Settings server 500 error
Currently unable to import Google Group settings (https://developers.google.com/admin-sdk/groups-settings/v1/reference/groups/get), not only in Identity Broker, but in the Google test explorer.
Have confirmed that the required scope has been applied to the account.
Group.PNG shows that the Groups are behaving fine.
GroupsSettings.PNG shows the error from Google.
Group.PNG
GroupsSettings.PNG
In place text editors
In place text editors should be used where possible.
The following places are a minimum:
- Adapter general settings (name, comment, object class, base connector)
- Connector general settings (name, comment, queue when blocked)
Should probably be done using extension methods that are also available to connector developers so that they can have in place editors as part of the display template. May impact IDB-960. Think about user permissions also, but that may have to be extended when the "security enhancements" road map item is done.
This will also solve PRODUCT-261.
The connector job ChangeDetectionSchedulerJobDecorator could not be run as the Chris21 Person Connector is currently disabled
The following exception was being logged constantly in Matt's environment:
20121028,00:00:21,UNIFY Identity Broker,Void <.ctor>b__0(),Error,"An exception has occured whilst performing a job for partition 34b83581-377c-41b5-afb9-2a705076285f job ReflectAdapterOnChangeDueJob: Unify.Framework.UnifyEngineException: The connector job ChangeDetectionSchedulerJobDecorator could not be run as the Chris21 Person Connector is currently disabled at Unify.Product.IdentityBroker.ChangeDetectionEnablementJobDecorator.<>c__DisplayClass2.<.ctor>b__0() at Unify.Framework.BeforeJobDecorator.Run() at Unify.Product.IdentityBroker.QueuedConnectorExecutionProcessorEndDecorator.Run()",Normal
Although it is describing the correct behaviour (an attempt to run a job was made, which required a disabled connector) the way in which it logged it was not useful, and would be worrying for implementers encountering this.
Firstly, this is not an Error, it is either a Warning or possibly information data. Secondly, considering it happens under the covers the logging level might need to be reassessed, as this will fill the logs quickly if the job is left unattended.
SQL Connector timeout
SQL Connector time out after export from FIM.
Restarting IdB service resolves issue so I can import again, but export continues to timeout.
--------------------------------------
Log Name: Application
Source: FIMSynchronizationService
Date: 11/2/2012 8:32:05 AM
Event ID: 6801
Task Category: Server
Level: Error
Keywords: Classic
User: N/A
Computer: IDSYS.widgetcorp.local
Description:
The extensible extension returned an unsupported error.
The stack trace is:
"System.Exception: Error occurred when attempting to save entity with distinguished name
CN=Alex Rujak
Error:
Timeout expired. The timeout period elapsed prior to obtaining a connection from the pool. This may have occurred because all pooled connections were in use and max pool size was reached.
at System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
at System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
at System.Data.SqlClient.SqlConnection.Open()
at Unify.Framework.Data.DbConnectionExtensions.OpenIfClosed(IDbConnection connection)
at Unify.Framework.Data.SqlServerDataControl.CreateComponent(Boolean factoryInformation)
at Unify.Framework.Data.AdoNetDataControl.ExecuteDataSetQuery(DataSet resultSet, String commandText, IEnumerable`1 parameters, String[] tableNames, CommandType commandType)
at Unify.Framework.Data.AdoNetDataControl.ReturnDataSetQueryT(String commandText, IEnumerable`1 parameters, String[] tableNames, CommandType commandType)
at Unify.Product.IdentityBroker.DirectCommunicatorBase`1.GetEntitiesDataTable(ICollection`1 keyList)
at Unify.Product.IdentityBroker.DirectCommunicatorBase`1.AddEntities(IEnumerable`1 entities)
at Unify.Product.IdentityBroker.DirectReadWriteConnectorBase`1.AddEntities(IEnumerable`1 entities)
at Unify.Product.IdentityBroker.EventNotifierAddingConnectorDecorator.AddEntities(IEnumerable`1 entities)
at Unify.Product.IdentityBroker.Adapter.AddEntities(IEnumerable`1 entities, Boolean reflect)
at Unify.Product.IdentityBroker.AdapterNotifierDecoratorBase`1.AddEntity(IAdapterEntity entity)
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.2548.0"
Database conflicting reference constraint on removal of adapters from config.
When you remove an adapter from the config and restart the service, the following error presents:
Service cannot be started. Unify.Framework.UnifyServerStartException: The DELETE statement conflicted with the REFERENCE constraint "FK_Container_Container". The conflict occurred in database "Unify.FIMIdentityBroker", table "dbo.Container", column 'PartitionId'.
The statement has been terminated. ---> System.Data.SqlClient.SqlException: The DELETE statement conflicted with the REFERENCE constraint "FK_Container_Container". The conflict occurred in database "Unify.FIMIdentityBroker", table "dbo.Container", column 'PartitionId'.
The statement has been terminated.
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
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 run...
Work-around is to go into SQL Server and manually delete items from the entity and partition tables... which is pretty time-consuming
How to build x64 Installers
Do we have any written down instructions or coded examples of what is required to build a x64 installer for a connector for distribution to clients.
I've created a number of connectors in the past, generally starting from an existing connector project and then building from there. One common issue is I've always built to x86. It would be handy, but not essential, to build to x64 given the x64 version of Identity Broker is what most clients I've seen use. So far working out how to get the installer project of any solution I've come across to output a x64 version has eluded me.
Please treat this as very low priority as we can copy the files over. If it a simple task that can be easily documented (or already is documented and I couldn't find it) then it'd be very much appreciated.
An example of a connector I've done some work on would be the Marval one for SSICT. Theres an installer project in the source code repository.
Customer support service by UserEcho