Невозможно запросить A / C через пользовательскую консоль в Tivoli Identity Manager 5.1

Я хочу понять, как ACL работает в Tivoli Identity Manager. Я пытаюсь запросить кондиционер для службы из пользовательской консоли, но получаю сообщение об ошибке:

«Запрос не может быть отправлен, потому что пароль синхронизации не соответствует правилам паролей, которые регулируют службу. Измените или сбросьте пароль синхронизации, чтобы соответствовать следующим правилам паролей».

Я установил пароль по умолчанию на «12345» в политике обеспечения и длину пароля от 0 до 8 в политике паролей и разрешил операцию «ДОБАВИТЬ» в ACL, но все еще не знаю, что я делаю не так. pПозвольте предложить

Ниже приведено правило политики идентификации по умолчанию для ITIM.

function createIdentity()  {   
var EXISTING_CASE=0;   
var UPPER_CASE=1;   
var LOWER_CASE=2;   
var tf = false;   
var identity = "";   
var baseidentity = "";   
 var counter = 0;   
var locale = subject.getProperty("erlocale");   
var fAttrKey = "uid";   
var sAttrKey = "";   
var idx1 = 0;   
var idx2 = 0;   
var fCase = 2;   
var sCase = 2;   
if ((locale != null) && (locale.length > 0)) {     
 locale = locale[0];   
}
if (locale == null || locale.length == 0)
locale = "";   
 var firstAttribute = "";   
 var secondAttribute = "";   
 if (((fAttrKey != null) && (fAttrKey.length > 0)) || ((sAttrkey != null) &&     (sAttrkey.length > 0))) {
 if ((fAttrKey != null) && (fAttrKey.length > 0)) {       
firstAttribute = subject.getProperty(fAttrKey);       
if (((firstAttribute != null) && (firstAttribute.length > 0)))         
 firstAttribute = firstAttribute[0];       
 if (firstAttribute == null || firstAttribute.length == 0)          
 firstAttribute = "";       
 else {         
 firstAttribute=IdentityPolicy.resolveAttribute(fAttrKey,firstAttribute);         
 if ((idx1>firstAttribute.length) || (idx1==0))            
   idx1=firstAttribute.length;         
 firstAttribute = firstAttribute.substring(0,idx1);       
 }       
if (fCase == UPPER_CASE)         
 firstAttribute = firstAttribute.toUpperCase(locale);       
 else if (fCase == LOWER_CASE)          
 firstAttribute = firstAttribute.toLowerCase(locale);     
}     
if ((sAttrKey != null) && (sAttrKey.length > 0)) {       
secondAttribute = subject.getProperty(sAttrKey);       
 if (((secondAttribute != null) && (secondAttribute.length > 0)))          
 secondAttribute = secondAttribute[0];       
 if (secondAttribute == null || secondAttribute.length == 0)          
 secondAttribute = "";       
 else {         
 secondAttribute=IdentityPolicy.resolveAttribute(sAttrKey,secondAttribute);         
 if ((idx2>secondAttribute.length) || (idx2==0))            
   idx2=secondAttribute.length;         
 secondAttribute = secondAttribute.substring(0,idx2);       
 }       
 if (sCase == UPPER_CASE)          
 secondAttribute = secondAttribute.toUpperCase(locale);       
 else if (sCase == LOWER_CASE)          
 secondAttribute = secondAttribute.toLowerCase(locale);     
 }     
 baseidentity = firstAttribute + secondAttribute;   
 }   
 if ((baseidentity == null) || (baseidentity.length == 0)) {     
var givenname = subject.getProperty("givenname");     
 if (((givenname != null) && (givenname.length > 0)))        
 givenname = givenname[0];     
  if(givenname == null || givenname.length == 0)        
 givenname = "";     
 else        
  givenname = givenname.substring(0,1);     
  baseidentity = givenname + subject.getProperty("sn")[0];   
  }   
  tf = IdentityPolicy.userIDExists(baseidentity, false, false);   
 if (!tf)      
 return baseidentity;   
  while (tf) {     
 counter+=1;     
  identity = baseidentity + counter;     
  tf = IdentityPolicy.userIDExists(identity, false, false);   
 }   
 return identity; 
 }  

 return createIdentity();

person Gaurav Sharma    schedule 10.10.2014    source источник


Ответы (1)


Я предполагаю, что когда вы запрашиваете доступ, у вас еще нет учетной записи для службы. Следовательно, он пытается создать новую учетную запись для этой службы перед предоставлением доступа. При создании новой учетной записи она будет использовать пароль из удостоверения службы, если у вас включена глобальная синхронизация паролей.

Пароль, установленный для удостоверения (erSynchPassword), не соответствует требованиям к паролю для отдельной службы. Попробуйте изменить пароль для удостоверения и убедитесь, что пароль соответствует требованиям к паролю службы. Или временно для тестирования отключите политику паролей, применяемую к этой службе, и попытайтесь запросить доступ.

Если это вопрос разработки, лично я бы временно отключил все политики паролей, чтобы определить, действительно ли проблема связана с политикой паролей. Это самый простой способ устранить возникшую ошибку.

person Matt    schedule 10.10.2014
comment
Мэтт, я попытался запросить кондиционер после отключения политики паролей, которая сработала. Хотя до сих пор не ясно, что не так с политиками. Когда я установил мин. длина пароля в политике паролей равняется 1, появляется указанная выше ошибка, и когда я устанавливаю минимальную длину равной 0, это позволяет создать A / C. Однако при попытке войти в этот новый кондиционер в службе он не принимает пароль по умолчанию, указанный в политике обеспечения (12345). не могли бы вы объяснить, что случилось? - person Gaurav Sharma; 11.10.2014
comment
@GauravSharma вы меняли пароль от личности на 12345? Вы заявили, что политика обеспечения помещает пароль в учетную запись. Если включена глобальная синхронизация паролей, ISIM должен передавать пароль от удостоверения к учетной записи, поэтому он будет отправлять все, что установлено для удостоверения, с включенной глобальной синхронизацией паролей. Следовательно, пароль удостоверения, вероятно, не соответствует требованиям к паролю для службы, к которой вы пытаетесь запросить доступ (и, следовательно, предоставить учетную запись). - person Matt; 11.10.2014
comment
Да, когда я выключаю синхронизацию паролей из (устанавливая свойства безопасности), A / C создается в службе Windows без проблем, проблема возникает, когда синхронизация паролей включена. Не могли бы вы также объяснить, почему, когда я выключаю синхронизацию паролей, при запросе A / C с пользовательской консоли он просит меня установить пароль, а не использовать пароль по умолчанию (12345), указанный в политике обеспечения для службы Windows. Кроме того, работает только одна политика идентификации по умолчанию, предназначенная для ITIM, и я обновил эти правила в разделе своих вопросов. - person Gaurav Sharma; 13.10.2014