def mep_config_add(inst, basedn, log, args): log = log.getChild('mep_config_add') plugin = ManagedEntriesPlugin(inst) config_area = plugin.get_attr_val_utf8_l('nsslapd-pluginConfigArea') if config_area is None: config_area = plugin.dn props = {'cn': args.NAME} generic_object_add(MEPConfig, inst, log, args, arg_to_attr_config, basedn=config_area, props=props)
def mep_template_add(inst, basedn, log, args): log = log.getChild('mep_template_add') targetdn = args.DN if not targetdn or not ldap.dn.is_dn(targetdn): raise ValueError("Specified DN is not a valid DN") generic_object_add(MEPTemplate, inst, log, args, arg_to_attr_template, dn=targetdn) log.info('Don\'t forget to assign the template to Managed Entry Plugin config ' 'attribute - managedTemplate')
def attruniq_add(inst, basedn, log, args): log = log.getChild('attruniq_add') props = {'cn': args.NAME} generic_object_add(AttributeUniquenessPlugin, inst, log, args, arg_to_attr, basedn=DN_PLUGIN, props=props)
def pam_pta_add(inst, basedn, log, args): log = log.getChild('pam_pta_add') plugin = PAMPassThroughAuthPlugin(inst) props = {'cn': args.NAME} generic_object_add(PAMPassThroughAuthConfig, inst, log, args, arg_to_attr_pam, basedn=plugin.dn, props=props)
def linkedattr_add(inst, basedn, log, args): log = log.getChild('linkedattr_add') plugin = LinkedAttributesPlugin(inst) props = {'cn': args.NAME} generic_object_add(LinkedAttributesConfig, inst, log, args, arg_to_attr, basedn=plugin.dn, props=props)
def definition_add(inst, basedn, log, args): log = log.getChild('definition_add') plugin = AutoMembershipPlugin(inst) props = {'cn': args.DEFNAME} generic_object_add(AutoMembershipDefinition, inst, log, args, arg_to_attr_definition, basedn=plugin.dn, props=props)
def dna_add(inst, basedn, log, args): log = log.getChild('dna_add') plugin = DNAPlugin(inst) props = {'cn': args.NAME} generic_object_add(DNAPluginConfig, inst, log, args, arg_to_attr, basedn=plugin.dn, props=props)
def regex_add(inst, basedn, log, args): log = log.getChild('regex_add') definitions = AutoMembershipDefinitions(inst) definition = definitions.get(args.DEFNAME) props = {'cn': args.REGEXNAME} generic_object_add(AutoMembershipRegexRule, inst, log, args, arg_to_attr_regex, basedn=definition.dn, props=props)
def attruniq_add(inst, basedn, log, args): log = log.getChild('attruniq_add') props = {'cn': args.NAME} # We require a subtree, or a target Objectclass if args.subtree_entries_oc is None and args.subtree is None: raise ValueError( "A attribute uniqueness configuration requires a 'subtree' or 'subtree-entries-oc' to be set" ) generic_object_add(AttributeUniquenessPlugin, inst, log, args, arg_to_attr, basedn=PLUGIN_DN, props=props)
def memberof_add_config(inst, basedn, log, args): log = log.getChild('memberof_add_config') targetdn = args.DN config = generic_object_add(MemberOfSharedConfig, inst, log, args, arg_to_attr, dn=targetdn) plugin = MemberOfPlugin(inst) plugin.replace('nsslapd-pluginConfigArea', config.dn) log.info('MemberOf attribute nsslapd-pluginConfigArea (config-entry) ' 'was set in the main plugin config')
def referint_add_config(inst, basedn, log, args): log = log.getChild('referint_add_config') targetdn = args.DN config = generic_object_add(ReferentialIntegrityConfig, inst, log, args, arg_to_attr, dn=targetdn) plugin = ReferentialIntegrityPlugin(inst) plugin.replace('nsslapd-pluginConfigArea', config.dn) log.info( 'ReferentialIntegrity attribute nsslapd-pluginConfigArea (config-entry) ' 'was set in the main plugin config')
def accountpolicy_add_config(inst, basedn, log, args): log = log.getChild('accountpolicy_add_config') targetdn = args.DN if not ldap.dn.is_dn(targetdn): raise ValueError("Specified DN is not a valid DN") config = generic_object_add(AccountPolicyConfig, inst, log, args, arg_to_attr_config, dn=targetdn) plugin = AccountPolicyPlugin(inst) plugin.replace('nsslapd_pluginConfigArea', config.dn) log.info( 'Account Policy attribute nsslapd-pluginConfigArea (config_entry) ' 'was set in the main plugin config')