When trying etautil command with much huge number of containers to update reading from a file as example:
UPDATE 'eTADSPolicyContainerName=Active Directory Policies,eTNamespaceName=CommonObjects' eTADSPolicy eTADSPolicyName='AT_AD My Company' eTAccountContainer='(eTCustomField02=01000000);eTADSOrgUnitName=User,eTADSOrgUnitName=Diretores My Company,eTADSOrgUnitName=My Organization Unit;... (more Ads containers - hundreds).
This can have the error:
ETA_E_1204, End of file reached while expecting a value
This could be necessary to use another different tool than etautil.
How to update the ADS Policy containers from Account Templates using another tool different of etautil?
The ETAUTIL will not do any checking for you. So either way, you'll have to sanitize your data before importing.
There is a limitation on the ETAUTIL that my exist on components that Admin depends on. This will not be a quick fix as multiple products would need to
be checked/modified.
How to make it in another tool different of etautil ?
Symantec Identity Manager 14.5.1 CHF01
etautil contains limitations when processing hundreds of containers simultaneously from a single input file.
Use ldapmodify.exe with an LDIF script to perform the import.
1. Locate ldapmodify.exe in the Provisioning Server bin directory: %ProgramFiles%\CA\CA Identity Manager\Provisioning Server\bin\ldapmodify.exe
2. Create a batch script using the following template (replace #### with environment-specific values):
---------------------------------------------------------------------------- REM ====================== Begin Sript ==================================== REM Notice that some lines may have wrapped due to the ticket system. REM REM Please replace the parameters with ***** with values for your systems. REM ____________________________________________________________ @echo off cls YourDomain = *****PutYourAdminDomainHere***** YourServer = *****PutYourAdminServerHere***** set BASEDN="eTADSPolicyContainerName=Active Directory Policies,eTNamespaceName=CommonObjects,dc=%YourDomain%,dc=eta" set D="eTGlobalUserName=etaadmin,eTGlobalUserContainerName=Global Users,eTNamespaceName=CommonObjects,dc=%YourDomain%,dc=eta" set W=*****YourPassword***** set P=20389 "%ProgramFiles%\CA\CA Identity Manager\Provisioning Server\bin\ldapmodify.exe" -h %YourServer% -p %P -D %D% -w %W% -v -f YourTextFile.txt REM ====================== End Sript ====================================
3. Format YourTextFile.txt using LDIF syntax. Do not put quotes around filter sets.--------------------- dn: eTADSPolicyName=TESTPOLICY,eTADSPolicyContainerName=Active Directory Policies,eTNamespaceName=CommonObjects,dc=im,dc=eta changetype: modify replace: eTAccountContainer eTAccountContainer: (eTOffice=Halifax Office);eTADSOrgUnitName=Users,eTADSOrgUnitName=<OrgUnitName>;........ ......... = the rest of the filters. Do not put quotes around the filter set. -----------------------------------------------------------------------------
4. f the containers include special characters (e.g., Portuguese), convert the LDIF file to base64 encoding using a tool like Jxplorer. One another way using a 3rd party online converter as https://www.base64encode.org/
Example:
Organization unit named as “<Org Name>” inside of eTAccountContainer (eTADSOrgUnitName=<Org Name>,eTADSSOrgUnitName=LatinAmerica;) need be converted to base64. After convertion this is a example of ldif file:
dn: eTADSPolicyName=test1,eTADSPolicyContainerName=Active Directory Policies,eTNamespaceName=CommonObjects,dc=im,dc=etaobjectClass: eTADSPolicyeTAccountContainer:: KGVUQ3VzdG9tRmllbGQ5OT0qKTtlVEFEU09yZ1VuaXROYW1lPVPDo28 gU2ViYXN0acOjbyxlVEFEU09yZ1VuaXROYW1lPUxhdGluQW1lcmljYTtlVEdsb2JhbFVzZXJOYW 1lPSo7ZVRBRFNDb250YWluZXJOYW1lPVVzZXJzOw==
Disclaimer: (CA Support does not provide or support custom scripts)