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

Service does not start due to existing files when installing to the same directory as v3.0.7

Matthew Clark 12 years ago updated by anonymous 9 years ago 4

When attempting to install v4.0 to the same directory as v3.0.7, all the new extensibility files are added to the directory, and all the old ones are kept. When attempting to start the service, the following error appears:

Error - The following occurred in module: General server error: Cannot create a file when that file already exists.

The following general server error occured:
System.IO.IOException: Cannot create a file when that file already exists.

at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.__Error.WinIOError()
at System.IO.FileInfo.MoveTo(String destFileName)
at Unify.Framework.Configuration.AssemblyDirectoryConfigurationEngine.<>c_DisplayClassc.<ClearConfigurations>b_a(FileInfo config)
at Unify.Framework.Visitor.<>c_DisplayClass1`1.<Visit>b_0(T item, Int32 index)
at Unify.Framework.Visitor.VisitT(IEnumerable`1 visitCollection, Action`2 visitor)
at Unify.Framework.Visitor.VisitT(IEnumerable`1 visitCollection, Action`1 visitor)
at Unify.Framework.Configuration.AssemblyDirectoryConfigurationEngine.ClearConfigurations(IUnifyEnginePlugInKey engine, IEnumerable`1 additionalProbeNames)
at Unify.Framework.Configuration.ConfigurationEngineBase.RetrieveConfiguration(IUnifyEnginePlugInKey engine, IEnumerable`1 additionalProbeNames)
at Unify.Framework.Configuration.ConfigurationEngineNotifierDecorator.RetrieveConfiguration(IUnifyEnginePlugInKey engine, IEnumerable`1 additionalProbeNames)
at Unify.Framework.Configuration.ConfigurationEngineAccessor.RetrieveConfiguration(IUnifyEnginePlugInKey engine, IEnumerable`1 additionalProbeNames)
at Unify.Framework.Logging.LoggingEngine`1.LoadConfiguration()
at Unify.Framework.Logging.LoggingEngine`1..ctor(INotificationMessageService messageService, FileSystemInfo executingDirectory, IConfigurationEngine configurationEngine, TBranding branding)
at Unify.Framework.Logging.LoggingEnginePlugInFactory`1.CreateComponent(IUnifyEnginePlugInFactoryInformation`1 factoryInformation)
at Unify.Framework.DependencyPlugInGenerator`4..ctor(ICollection`1 plugInGenerator, IPlugInFactory`2 factoryInformationFactory)
at Unify.Framework.UnifyEngine`1..ctor(TBranding branding, IEnumerable`1 additionalPlugInFactories, DirectoryInfo executingAssemblyLocation, IsolatedStorageFile isolatedStorageLocation)
at Unify.Service.IdentityBrokerServiceEngine..ctor(DirectoryInfo assemblyExcutionPath, IsolatedStorageFile isolatedFile, IIdentityBrokerBranding branding)
at Unify.Service.IdentityBrokerService.OnStart(String[] args)

For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

0
Completed

Retain state of scheduler on service restart

Bob Bradley 10 years ago updated by anonymous 9 years ago 2

From IDB-1177, the Identity Broker scheduler should retain the last state on service restart.

Similar to EB-426.

0
Fixed

Upgrading to SAP 64bit is broken

Monash 9 years ago updated by anonymous 9 years ago 4

1) Upgraded SAP 64bit 4.1.3
2) Upgraded IDB 4.1.5
3) Restart IdB

Unable to edit Agent


image-2015-08-19-15-32-20-920.png
screenshot-1.png
0
Completed

System.Web.Mvc.dll could not be found

Bob Bradley 10 years ago updated by anonymous 9 years ago 6

The following exception was thrown in the browser on clicking on the link to edit the details of an existing AGENT (while scheduler was running):

System.Web.HttpCompileException (0x80004005): (0): error CS0006: Metadata file 'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.Mvc\v4.0_3.0.0.0__31bf3856ad364e35\System.Web.Mvc.dll' could not be found
 at System.Web.Compilation.AssemblyBuilder.Compile()
 at System.Web.Compilation.BuildProvidersCompiler.PerformBuild()
 at System.Web.Compilation.BuildManager.CompileWebFile(VirtualPath virtualPath)
 at System.Web.Compilation.BuildManager.GetVPathBuildResultInternal(VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile, Boolean throwIfNotFound, Boolean ensureIsUpToDate)
 at System.Web.Compilation.BuildManager.GetVPathBuildResultWithNoAssert(HttpContext context, VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile, Boolean throwIfNotFound, Boolean ensureIsUpToDate)
 at System.Web.Compilation.BuildManager.GetVirtualPathObjectFactory(VirtualPath virtualPath, HttpContext context, Boolean allowCrossApp, Boolean throwIfNotFound)
 at System.Web.Mvc.BuildManagerWrapper.System.Web.Mvc.IBuildManager.FileExists(String virtualPath)
 at System.Web.Mvc.VirtualPathProviderViewEngine.GetPathFromGeneralName(ControllerContext controllerContext, List`1 locations, String name, String controllerName, String areaName, String cacheKey, String[]& searchedLocations)
 at System.Web.Mvc.VirtualPathProviderViewEngine.GetPath(ControllerContext controllerContext, String[] locations, String[] areaLocations, String locationsPropertyName, String name, String controllerName, String cacheKeyPrefix, Boolean useCache, String[]& searchedLocations)
 at System.Web.Mvc.VirtualPathProviderViewEngine.FindView(ControllerContext controllerContext, String viewName, String masterName, Boolean useCache)
 at System.Web.Mvc.ViewEngineCollection.<>c__DisplayClassc.<FindView>b__b(IViewEngine e)
 at System.Web.Mvc.ViewEngineCollection.Find(Func`2 lookup, Boolean trackSearchedPaths)
 at System.Web.Mvc.ViewResult.FindView(ControllerContext context)
 at System.Web.Mvc.ViewResultBase.ExecuteResult(ControllerContext context)
 at System.Web.Mvc.ControllerActionInvoker.<>c__DisplayClass1c.<InvokeActionResultWithFilters>b__19()
 at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilter(IResultFilter filter, ResultExecutingContext preContext, Func`1 continuation)
 at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(ControllerContext controllerContext, IList`1 filters, ActionResult actionResult)
 at System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext, String actionName)
0
Completed

IDB - Saved empty config on write error

Richard Green 10 years ago updated by anonymous 9 years ago 2

On saving configuration when there is no disk space, the following exception is thrown: System.IO.IOException: There is not enough space on the disk. The saved configuration file is then empty. As there is nothing that can be done at this point to save the file (it's gone and the OS is refusing writes), explore whether the file can be renamed before writing out the new file, then delete the renamed file. The thing stopping this from being viable it will require further permissions for the service account (may be okay, as it already does for the logs).

HI Gents,

Encountered a concerning issue with Identity Broker in the TAFE Dev environment this afternoon. On creating and saving a new connector, the following error was thrown due to a disk space issue on the drive: System.IO.IOException: There is not enough space on the disk.

A little investigation revealed that someone had left WCF tracing running on the service, and it had built up a considerable file. Needless to say, I stopped the service, disabled the tracing and cleared away the log file.

On attempting to restart the service, the following error was thrown:

Service cannot be started. Unify.Framework.UnifyServiceInitializeException: Root element is missing. ---> System.Xml.XmlException: Root element is missing.

Investigation revealed that the ConnectorEngine extensibility file was empty/blank. It appears that when it failed to add the connector, it actually saved a blank config. I imagine the same would have happened had I attempted to add an agent or adapter.

I was able to restore the configuration from a backup, but thought this should be raised with your team

Cheers
Richard

0
Answered

Error Importing to ILM - DN generation failed error

Matthew Woolnough 12 years ago updated by anonymous 9 years ago 2

DN generation failed for entity with id 94622d75-68ef-4c1a-831a-00052f7b631a. In order to use the Entity Key DN Generator, all key fields must have a value.

Seems as though IdB is assigning attributes to be keys during transformations, which is causing imports to fail.

The following attributes are all listed as keys, when only the top two should be.

Name Type Key Required Read-only
adrtype String True True True
detnumber String True True True
mgrdetnumber String True True True
mgrposstart Date True True True
posstart Date True True True


Extensibility.zip
Traces.svclog
UNIFYLog20130227.csv
0
Fixed

DN template broken on upgrade from v4.0 to v4.1

Adam van Vliet 10 years ago updated by anonymous 9 years ago 3

The DN templates are broken on upgrade from v4.0 to v4.1. For example:

          <dn xmlns="">
            <dnComponent name=<span class="code-quote">"Field"</span> id=<span class="code-quote">"28774c0e-011c-4241-a484-4bd58f9170bf"</span> attributeType=<span class="code-quote">"UID"</span> key=<span class="code-quote">"RecordId"</span> />
            <dnComponent name=<span class="code-quote">"Constant"</span> id=<span class="code-quote">"478f7ec4-c400-4b1e-b3db-cb5c676feca7"</span> attributeType=<span class="code-quote">"OU"</span> value=<span class="code-quote">"org"</span> />
            <dnComponent name=<span class="code-quote">"Constant"</span> id=<span class="code-quote">"226cbcd6-1d19-4ff4-97f1-e0aac0b80374"</span> attributeType=<span class="code-quote">"DC"</span> value=<span class="code-quote">"CHRIS21DEMODC"</span> />
          </dn>

This dn generator turns into UID=RecordId+DC=CHRIS21DEMODC (this is known due to a failed export), but then when edited is blank.

The upgrade should give a template of UID=RecordId,OU=org,DC=CHRIS21DEMODC and the UI should hopefully reflect this. It would be nice to have the new template saved back to the file, but not essential.

0
Answered

How to set a an Adapter in IdB to filter the "Offset" on days and not Hours

André van der Westhuizen 12 years ago updated by anonymous 9 years ago 3

The requirement is that accounts must be provisioned if they will the date commenced is less than 7 days:

I want to set "DateActive" to filter the offset against days.

I did see the following, but don't know how to configure the offset for days:

 
A Time value type is defined in the following manner:

[ws][sign]d|[d.]hh:mm[:ss[.ff]][ws]
 
<adapter name="TimeOffsetFlag"
  SourceColumn="DateActive"
  DestinationColumn="EmployeeStarted"
  Offset="10:00:00"
  EqualValue="True"
  GreaterValue="False"
  LesserValue="True"
  NullValue="False" />
0
Fixed

Required schema fields block updates

Matthew Clark 13 years ago updated by anonymous 9 years ago 2

If an adapter has a field marked as required, all update attempts fail validation. I have recreated this with a chris21 composite adapter, and a singular CSV adapter. The following errors appear in the logs and the second is thrown back to FIM:

25/May/2012 15:08:40 Warning
Adapter The entity <null> (60b62d76-d1cd-419a-8ed2-9fb864450855) in the connector CSV Test (a20d54cf-20c6-4583-bfe9-4df697c3d575) failed validation 1 times for the following reasons: Key is a required field and is not present.
25/May/2012 15:08:40 Warning
Adapter Adapter request to update entity to adapter space failed.
Adapter request to update entity 60b62d76-d1cd-419a-8ed2-9fb864450855 to adapter space 116f12ec-6b0e-4071-a6e9-ef850e1ba7cc failed with reason 1 items failed schema validation during Adapter operation. Check log for validation errors.. Duration: 00:00:00.0039063
Error details:
Unify.Framework.UnifyConfigurationException: 1 items failed schema validation during Adapter operation. Check log for validation errors.
at Unify.Product.IdentityBroker.Adapter.GetValidEntities(IEnumerable`1 transformedEntities)
at Unify.Product.IdentityBroker.Adapter.UpdateEntities(IEnumerable`1 entities, Boolean reflect)
at Unify.Product.IdentityBroker.Adapter.UpdateEntity(IAdapterEntity entity, Boolean reflect)
at Unify.Product.IdentityBroker.Adapter.UpdateEntity(IAdapterEntity entity)
at Unify.Product.IdentityBroker.AdapterNotifierDecoratorBase`1.UpdateEntity(IAdapterEntity entityToSave)
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)

Of note is that the key field in the log is "<null>" when it appears in the adapter entity search.

0
Fixed

Relational connector changes do not clear change cache in statistics engine

Tony Sheehy 12 years ago updated by anonymous 9 years ago 1

The adapter statistics engine only clears changes on base-connector-adapters on connector change detection.

See: AdapterStatisticsEnginePlugInFactory, id => adapterEngine.GetBaseConnectorAdapters(id).Select(adapter => adapter.Adapter.Key)), line 65