【问题标题】:Unable to request an A/C through user console in Tivoli identity manager 5.1无法通过 Tivoli Identity Manager 5.1 中的用户控制台请求 A/C
【发布时间】:2014-10-10 14:21:12
【问题描述】:

我想了解 ACL 在 Tivoli Identity Manager 中的工作原理。我正在尝试从用户控制台请求服务的空调但收到错误:

"由于同步密码不符合管理服务的密码规则,无法提交请求。请更改或重置同步密码以符合以下密码规则。"

我已将配置策略中的默认密码设置为“12345”,密码策略中的密码长度从 0 到 8,并在 ACL 中授予“添加”操作,但仍然不知道我在做什么错。请推荐

以下是 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();

【问题讨论】:

    标签: tivoli-identity-manager


    【解决方案1】:

    我假设您在请求访问权限时还没有该服务的帐户。因此,它会在配置访问之前尝试为该服务创建一个新帐户。创建新帐户时,如果您打开了全局密码同步,它将使用服务身份中的密码。

    在身份(erSynchPassword)上设置的密码不符合单个服务的密码要求。尝试更改身份上的密码,并确保密码符合服务的密码要求。或者,暂时为了测试,禁用适用于该服务的密码策略并尝试请求访问。

    如果这是一个开发问题,我个人会暂时禁用所有密码策略,以确定问题是否真的是密码策略问题。这是解决您看到的错误的最简单方法。

    【讨论】:

    • 马特,我在禁用密码策略后尝试请求空调。不过,目前尚不清楚这些政策出了什么问题。当我设置最小值时。密码策略中的密码长度为 1 出现上述错误,当我将最小长度设置为 0 时,它允许创建 A/C。但是,当尝试登录服务上的新空调时,它不接受配置策略中给出的默认密码 (12345)。你能解释一下有什么问题吗?
    • @GauravSharma 您是否将身份密码更改为 12345?您声明供应策略将密码放在帐户上。如果启用了全局密码同步,ISIM 应该会为您将密码从身份推送到帐户,因此它会在启用全局密码同步的情况下推送身份上设置的任何内容。因此,身份密码可能不符合您尝试请求访问(并因此提供帐户)的服务的密码要求。
    • 是的,当我从(设置安全属性)关闭密码同步时,在 Windows 服务上创建的 A/C 没有问题,打开密码同步时会出现问题。您能否解释一下为什么当我关闭密码同步时,在从用户控制台请求空调时,它要求我设置密码,而不是使用 Windows 服务配置策略中给出的默认密码 (12345)。此外,只有一个针对 ITIM 的默认身份策略正在运行,我已经在我的问题部分更新了这些规则
    猜你喜欢
    • 1970-01-01
    • 2020-08-23
    • 2019-10-29
    • 1970-01-01
    • 1970-01-01
    • 2021-01-21
    • 2018-12-26
    • 1970-01-01
    • 2017-07-23
    相关资源
    最近更新 更多