Neuen Realm dynamisch hinzufügen

Mit dem hier beschriebenen Verfahren können Sie einen neuen Realm während der Laufzeit dynamisch zur aktuellen Konfiguration hinzufügen.

Informationen zu diesem Vorgang

Anmerkung: Wenn dieser dynamische Aufruf ausgeführt wird, wird nur die Konfiguration im Arbeitsspeicher aktualisiert. Die Konfigurationsdatei wird nicht aktualisiert.
Ereignistyp
DYNA_CONFIG_EVENT_ADD_REALM
Konfigurationsdaten
DYNA_CONFIG_KEY_REALM_CONFIG (erforderlich) - [DataObject]
Gibt das Datenobjekt für die Realmkonfiguration basierend auf der Datei "wimconfig.xsd" an.
Ein Beispiel für die Task ist nachfolgend beschrieben:

Vorgehensweise

  1. Stellen Sie sicher, dass Virtual Member Manager aktiv ist.
  2. Fügen Sie einen neuen Realm zur Konfiguration von Virtual Member Manager hinzu. Beispiel:
    Hashtable configData = new Hashtable();
    		DataObject realmCfgDO = SDOHelper.createConfigDataObject(null, Service.WIM_CONFIG_NS_URI, 
       Service.CONFIG_DO_REALM_CONFIG);
    		DataObject realmDO = SDOHelper.createConfigDataObject(realmCfgDO, Service.WIM_CONFIG_NS_URI, 
       Service.CONFIG_DO_REALMS);
    		realmDO.setString(Service.CONFIG_PROP_NAME, "NewRealm");
    		realmDO.setString(Service.CONFIG_PROP_SECURITY_USE, "active");
    		realmDO.setString(Service.CONFIG_PROP_DELIMITER, "@");
    
    		DataObject partBaseEntry = SDOHelper.createConfigDataObject(realmDO, Service.WIM_CONFIG_NS_URI, 
       Service.CONFIG_DO_PARTICIPATING_BASE_ENTRIES);
    		partBaseEntry.set(Service.CONFIG_PROP_NAME, "cn=realmusers,dc=yourco,dc=com");
    
    		DataObject defaultParentDO = SDOHelper.createConfigDataObject(realmDO, Service.WIM_CONFIG_NS_URI, 
       Service.CONFIG_DO_DEFAULT_PARENTS);
    		defaultParentDO.setString(Service.CONFIG_PROP_ENTITY_TYPE_NAME, "PersonAccount");
    		defaultParentDO.setString(Service.CONFIG_PROP_PARENTS_UNIQUE_NAME, "cn=realmusers,dc=yourco,dc=com");
    
    		DataObject uniqueUserIdMappingDO = SDOHelper.createConfigDataObject(realmDO,
        Service.WIM_CONFIG_NS_URI,Service.CONFIG_DO_UNIQUE_USER_ID_MAPPING);
    		uniqueUserIdMappingDO.setString(Service.CONIG_PROP_PROPERTY_FOR_INPUT, "uniqueName");
    		uniqueUserIdMappingDO.setString(Service.CONIG_PROP_PROPERTY_FOR_OUTPUT, "uniqueName");
    
    		DataObject userSecurityNameMappingDO = SDOHelper.createConfigDataObject(realmDO,
        Service.WIM_CONFIG_NS_URI,Service.CONFIG_DO_USER_SECURITY_NAME_MAPPING);
    		userSecurityNameMappingDO.setString(Service.CONIG_PROP_PROPERTY_FOR_INPUT, "principalName");
    		userSecurityNameMappingDO.setString(Service.CONIG_PROP_PROPERTY_FOR_OUTPUT, "externalName");
    
    		DataObject userDisplayNameMappingDO = SDOHelper.createConfigDataObject(realmDO,
        Service.WIM_CONFIG_NS_URI,Service.CONFIG_DO_USER_DISPLAY_NAME_MAPPING);
    		userDisplayNameMappingDO.setString(CONIG_PROP_PROPERTY_FOR_INPUT, "principalName");
    		userDisplayNameMappingDO.setString(Service.CONIG_PROP_PROPERTY_FOR_OUTPUT, "principalName");
    
    		DataObject uniqueGroupIdMappingDO = SDOHelper.createConfigDataObject(realmDO,
        Service.WIM_CONFIG_NS_URI,Service.CONFIG_DO_UNIQUE_GROUP_ID_MAPPING);
    		uniqueGroupIdMappingDO.setString(Service.CONIG_PROP_PROPERTY_FOR_INPUT, "uniqueName");
    		uniqueGroupIdMappingDO.setString(Service.CONIG_PROP_PROPERTY_FOR_OUTPUT, "uniqueName");
    
    		DataObject groupSecurityNameMappingDO = SDOHelper.createConfigDataObject(realmDO,
        Service.WIM_CONFIG_NS_URI,Service.CONFIG_DO_GROUP_SECURITY_NAME_MAPPING);
    		groupSecurityNameMappingDO.setString(Service.CONIG_PROP_PROPERTY_FOR_INPUT, "cn");
    		groupSecurityNameMappingDO.setString(Service.CONIG_PROP_PROPERTY_FOR_OUTPUT, "externalName");
    
    		DataObject groupDisplayNameMappingDO = SDOHelper.createConfigDataObject(realmDO,
        Service.WIM_CONFIG_NS_URI,CONFIG_DO_GROUP_DISPLAY_NAME_MAPPING);
    		groupDisplayNameMappingDO.setString(Service.CONIG_PROP_PROPERTY_FOR_INPUT, "cn");
    		groupDisplayNameMappingDO.setString(Service.CONIG_PROP_PROPERTY_FOR_OUTPUT, "cn");
    		
    		configData.put(Service.DYNA_CONFIG_KEY_REALM_CONFIG, realmDO);
    		
    		service.dynamicUpdateConfig(Service.DYNA_CONFIG_EVENT_ADD_REALM, configData);


Rechtliche Hinweise | Feedback