我运行了下面的buildmap规则:
import sailpoint.object.Schema;
import sailpoint.connector.Connector;
import sailpoint.connector.DelimitedFileConnector;
// Importing the classes which allow us to create permissions
import sailpoint.object.Permission;
if ( schema.getObjectType().compareTo(Connector.TYPE_ACCOUNT) == 0) {
HashMap map = DelimitedFileConnector.defaultBuildMap(cols, record);
return map;
} else if ( schema.getObjectType().compareTo(Connector.TYPE_GROUP) == 0) {
// Calling the Connector to retrieve account attributes as an Hash Map
HashMap map = DelimitedFileConnector.defaultBuildMap(cols, record);
String permission = (String)map.get("Permission Rights");
// Here we are using our permission model... Such as: right, write, execute, update on target.
if ( permission != null && permission.contains("-")) {
// We create an Arraylist bucket to populate all permission objects
List perms = new ArrayList();
String [] permissions = permission.split("-");
for ( int i = 0; permissions.length > i; i ++ ) {
String target = permissions[i].substring(0, permissions[i].indexOf(":"));
String permission = permissions[i].substring(permissions[i].indexOf(":"));
if ( permission.equals(":YY") ) {
// For each Permission we have to create a new object. Therefore the multiple new object declaration
Permission perm = new Permission();
perm.setRights("update");
perm.setTarget(target);
perms.add(perm);
Permission perm = new Permission();
perm.setRights("create");
perm.setTarget(target);
perms.add(perm);
} else {
Permission perm = new Permission();
perm.setRights("execute");
perm.setTarget(target);
perms.add(perm);
}
}
// We finished building our permissions and return the ArrayList object which represents a multi valued attribute of permissions
map.put("directPermissions", perms);
}
return map;
}
字符串
但得到以下错误:
错误-聚合应用程序Pam应用程序上的对象类型Pam组时出现异常。原因:java.lang。RuntimeException:sailpoint.connector。ConnectorException:生成规则必须返回Map
x1c 0d1x的数据
有人可以帮助我在这里吗?请让我知道,如果有任何修改需要在上述代码
1条答案
按热度按时间cgyqldqp1#
IdentityIQ buildmap规则总是期望返回map值,即使你在规则中没有做任何事情,如果条件失败,你的代码也不会返回任何map,这就是你错误的原因。
字符串