XML-Sicherheitsdeskriptordatei

Verwenden Sie eine XML-Sicherheitsdeskriptordatei, um eine eXtreme-Scale-Implementierungstopologie mit aktivierter Sicherheit zu konfigurieren. Sie können die Elemente in dieser Datei verwenden, um verschiedene Sicherheitsaspekte zu konfigurieren.

Element "securityConfig"

Das Element "securityConfig" ist das Ausgangselement der ObjectGrid-XML-Sicherheitsdatei. Dieses Element konfiguriert den Namespace der Datei und die Schemaposition. Das Schema wird in der Datei objectGridSecurity.xsd definiert.

Element "security"

Verwenden Sie das Element "security", um die Sicherheit eines ObjectGrids zu definieren.
Attribute
securityEnabled
Aktiviert die Sicherheit für das Grid, wenn es den Wert "true" hat. Der Standardwert ist "false". Wenn das Attribut den Wert "false" hat, ist die gridweite Sicherheit inaktiviert. Weitere Informationen finden Sie im Abschnitt Datengridsicherheit. (Optional)
singleSignOnEnabled
Dieses Attribut ermöglicht einem Client, eine Verbindung zu einem beliebigen Server herzustellen, nachdem er bei einem der Server authentifiziert wurde, wenn das Attribut den Wert true hat. Hat das Attribut den Wert "false", muss ein Client sich bei jedem Server authentifizieren, bevor er eine Verbindung herstellen kann. Der Standardwert ist "false". (Optional)
loginSessionExpirationTime
Gibt die Verfallszeit der Anmeldesitzung in Sekunden an. Wenn die Anmeldesitzung abläuft, muss sich der Client erneut authentifizieren. (Optional)
adminAuthorizationEnabled
Aktiviert die Verwaltungsberechtigung. Wenn dieses Attribut den Wert "true" hat, müssen alle Verwaltungstasks berechtigt werden. Der verwendete Berechtigungsmechanismus wird mit dem Wert des Attributs adminAuthorizationMechanism angegeben. Der Standardwert ist "false". (Optional)
adminAuthorizationMechanism
Gibt an, welcher Berechtigungsmechanismus zu verwenden ist. WebSphere eXtreme Scale unterstützt zwei Berechtigungsmechanismen: Java Authentication and Authorization Service (JAAS) und angepasste Berechtigung. Der Berechtigungsmechanismus JAAS verwendet den richtlinienbasierten JAAS-Standardansatz. Wenn Sie JAAS als Berechtigungsmechanismus festlegen möchten, setzen Sie das Attribut auf AUTHORIZATION_MECHANISM_JAAS. Der angepasste Berechtigungsmechanismus verwendet eine vom Benutzer integrierte AdminAuthorization-Implementierung. Wenn Sie einen angepassten Berechtigungsmechanismus angeben möchten, setzen Sie das Attribut auf AUTHORIZATION_MECHANISM_CUSTOM. Weitere Informationen zur Verwendung dieser beiden Mechanismen finden Sie im Abschnitt Anwendungsclientberechtigung. (Optional)

Die folgende Datei security.xml ist eine Beispielkonfiguration zum Aktivieren der Datengridsicherheit:

security.xml

<?xml version="1.0" encoding="UTF-8"?>
<securityConfig xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://ibm.com/ws/objectgrid/config/security ../objectGridSecurity.xsd"
	xmlns="http://ibm.com/ws/objectgrid/config/security">

    <security securityEnabled="true" singleSignOnEnabled="true" 
        loginSessionExpirationTime="20"
        adminAuthorizationEnabled="true"
        adminAuthorizationMechanism="AUTHORIZATION_MECHANISM_JAAS" >
	
        <authenticator className ="com.ibm.websphere.objectgrid.security.plugins.
						builtins.WSTokenAuthenticator">
                </authenticator>
        
        <systemCredentialGenerator className ="com.ibm.websphere.objectgrid.security.
						plugins.builtins.WSTokenCredentialGenerator">
                        <property name="properties" type="java.lang.String" value="runAs"
								description="Using runAs subject" />
                </systemCredentialGenerator>

    	</security></securityConfig>

Element "authenticator"

Authentifiziert Clients bei eXtreme-Scale-Servern im Datengrid. Die Klasse, die mit dem Attribut "className" angegeben wird, muss die Schnittstelle com.ibm.websphere.objectgrid.security.plugins.Authenticator implementieren. Der Authentifikator kann Eigenschaften verwenden, um Methoden in der Klasse aufzurufen, die mit dem Attribut "className" angegeben wird. Weitere Informationen zur Verwendung von Eigenschaften finden Sie in der Beschreibung des Elements "property".

In der vorherigen Beispieldatei security.xml wurde die Klasse com.ibm.websphere.objectgrid.security.plugins.builtins.WSTokenAuthenticator als Authentifikator angegeben. Diese Klasse implementiert die Schnittstelle com.ibm.websphere.objectgrid.security.plugins.Authenticator.

Attribute
className
Gibt eine Klasse an, die die Schnittstelle com.ibm.websphere.objectgrid.security.plugins.Authenticator implementiert. Verwenden Sie diese Klasse, um Clients bei Servern im eXtreme-Scale-Grid zu authentifizieren. (Erforderlich)

Element "adminAuthorization"

Verwenden Sie das Element "adminAuthorization", um den Verwaltungszugriff auf das Datengrid zu konfigurieren.
Attribute
className
Gibt eine Klasse an, die die Schnittstelle com.ibm.websphere.objectgrid.security.plugins.AdminAuthorization implementiert. (Erforderlich)

Element "systemCredentialGenerator"

Verwenden Sie ein Element "systemCredentialGenerator", um einen Generator für Systemberechtigungsnachweise zu konfigurieren. Dieses Element gilt nur für eine dynamische Umgebung. Im dynamischen Konfigurationsmodell stellt der dynamische Container-Server als eXtreme-Scale-Client eine Verbindung zum Katalogserver her, und der Katalogserver kann ebenfalls als Client eine Verbindung zum eXtreme-Scale-Container-Server herstellen. Dieser Generator für Systemberechtigungsnachweise wird für die Darstellung einer Factory für die Systemberechtigungsnachweise verwendet.
Attribute
className
Gibt eine Klasse an, die die Schnittstelle "com.ibm.websphere.objectgrid.security.plugins.CredentialGenerator" implementiert. (Erforderlich)

Ein Beispiel zur Verwendung des Elements systemCredentialGenerator entnehmen Sie der vorherigen Datei security.xml. In diesem Beispiel ist der Systemberechtigungsnachweisgenerator eine Klasse com.ibm.websphere.objectgrid.security.plugins.builtins.WSTokenCredentialGenerator, die das RunAs-Subject-Objekt aus dem Thread abruft.

Element "property"

Ruft set-Methoden in den Klassen "authenticator" und adminAuthorization auf. Der Name der Eigenschaft entspricht einer set-Methode im Attribut className des Elements "authenticator" bzw. "adminAuthorization".
Attribute
name
Der Name der Eigenschaft. Der Wert, der diesem Attribut zugeordnet wird, muss einer set-Methode in der Klasse entsprechen, die mit dem Attribut "className" der übergeordneten Bean angegeben wird. Wenn das Attribut "className" der Bean beispielsweise auf "com.ibm.MyPlugin" gesetzt ist und der Name der angegebenen Eigenschaft "size" lautet, muss die Klasse "com.ibm.MyPlugin" eine Methode "setSize" haben. (Erforderlich)
type
Gibt den Typ der Eigenschaft an. Der Typ des Parameters, der an die mit dem Attribut "name" angegebene set-Methode übergeben wird. Die gültigen Werte sind primitive Java-Typen, ihre java.lang-Pendants und java.lang.String. Die Attribute "name" und "type" müssen einer Methodensignatur im Attribut "className" der Bean entsprechen. Wenn der Name beispielsweise "size" und der Typ "int" ist, muss eine Methode "setSize(int)" in der Klasse vorhanden sein, die mit dem Attribut "className" für die Bean angegeben wurde. (Erforderlich)
value
Gibt den Wert der Eigenschaft an. Dieser Wert wird in den mit dem Attribut "type" angegebenen Typ konvertiert und anschließend als Parameter in dem Aufruf der set-Methode verwendet, die mit den Attributen "name" und "type" angegeben wurde. Der Wert dieses Attributs wird nicht validiert. Der Plug-in-Implementierer muss sicherstellen, dass der übergebene Wert gültig ist. (Erforderlich)
description
Gibt eine Beschreibung der Eigenschaft an. (Optional)

Weitere Informationen finden Sie im Abschnitt Datei objectGridSecurity.xsd.