Die Internen Module¶
Das Netzwerk Modul¶
Mit dem Netzwerk Modul konfigurierst du alle Parameter welche für die Verbindung zum Raptor Server notwendig sind.
Das Konfigurationsschema¶
Module
Network
List
Complex list definition
Must not be empty.
Minimum value:
0
Maximum value:
65535
Default Value:
0
Must not be empty.
Must be one of this:
Web
,Client
Default Value:
Yes
Must not be empty.
Die Liste Bindings
¶
In der Liste Bindings
konfigurierst du welche Schnittstellen der Server öffnen soll. Jeder Eintrag in der Liste repräsentiert dabei ein Port welcher für ein bestimmtes Protokoll geöffnet wird.
Der einzige notwendige Wert in einem Eintrag ist Service
. Der Server wählt daraufhin automatisch den Standartport für diesen Service. Die Standartports für jeden Service findest du in der folgenden Tabelle:
Service |
Default Port |
Beschreibung |
---|---|---|
|
|
Über diese Schnittstelle kann sich der Raptor Client mit dem Server verbinden. |
|
|
Die Webschnittstelle erlaubt zugriffe auf die Raptor Daten über das HTTP Protokoll. |
1<List name="Bindings">
2 <ListEntry>
3 <Value name="Service">Client</Value>
4 <Value name="SslProfile">server</Value>
5 </ListEntry>
6 <ListEntry>
7 <Value name="Service">Web</Value>
8 <Value name="Port">9020</Value>
9 <Value name="SslProfile">server-web</Value>
10 </ListEntry>
11</List>
Der Wert Service
¶
Mit dem Wert Service
wählst du das Protokoll welches für den angegeben Port verfügbar sein soll. Mögliche Werte sind dabei Client
und Web
. Deren Bedeutung findest du in der Tabelle oben.
1<List name="Bindings">
2 <ListEntry>
3 <Value name="Service">Client</Value>
4 <Value name="SslProfile">server</Value>
5 </ListEntry>
6 <ListEntry>
7 <Value name="Service">Web</Value>
8 <Value name="Port">9020</Value>
9 <Value name="SslProfile">server-web</Value>
10 </ListEntry>
11</List>
Der Wert Address
¶
Mit dem optionalen Wert Address
wählst du das Netzwerkinterface auf welchem der Port geöffnet werden soll. Lässt du den Wert weg, oder gibst ein einzelnes *
-Zeichen an, wird der Port auf allen Netzwerkschnittstellen geöffnet.
Um die Schnittstelle auf einem Bestimmten Interface zu öffnen, gibst du hier einfach die zugeordnete IP-Adresse an. Ein Spezialfall ist dabei localhost
oder 127.0.0.1
. Mit dieser Einstellung wird die Schnittstelle nur lokal geöffnet.
1<List name="Bindings">
2 <ListEntry>
3 <Value name="Service">Client</Value>
4 <Value name="Address">10.0.50.60</Value>
5 <Value name="SslProfile">server</Value>
6 </ListEntry>
7 <ListEntry>
8 <Value name="Service">Web</Value>
9 <Value name="Address">127.0.0.1</Value>
10 <Value name="Port">8090</Value>
11 <Value name="SslProfile">server-web</Value>
12 </ListEntry>
13</List>
Der Wert Port
¶
Mit dem optionalen Wert Port
wählst du einen alternativen Port für die Schnittstelle. Lässt du den Wert weg, wird der Default Port für den gewählten Service verwendet. Welche Ports dies sind, findest du in der Tabelle weiter oben.
1<List name="Bindings">
2 <ListEntry>
3 <Value name="Service">Client</Value>
4 <Value name="SslProfile">server</Value>
5 </ListEntry>
6 <ListEntry>
7 <Value name="Service">Web</Value>
8 <Value name="Port">6021</Value>
9 <Value name="SslProfile">server-web</Value>
10 </ListEntry>
11</List>
Der Wert SslProfile
¶
Mit SslProfile
bestimmst du die SSL-Konfiguration für deine Verbindung. Stelle sicher, dass der Name, den du hier einfügst, in der Liste profiles
im SSL
Konfigurationsmodul vorhanden ist. In Kapitel Eigene SSL Zertifikate verwenden erfährst du mehr darüber, wie du das SSL-Profil richtig einrichtest.
Du hast auch die Möglichkeit, diesen Wert auf legacy
zu setzen. Das ist besonders hilfreich, wenn du eine Migration durchführen oder ältere Installationen unterstützen möchtest. In diesem Fall verwendet das System die integrierten Zertifikate, die mit älteren Versionen des Raptor Systems kompatibel sind.
Warnung
Wir empfehlen allerdings ausdrücklich, immer eigene Zertifikate und Schlüssel zu verwenden. Diese sollten den korrekten Servernamen enthalten und von einer internen Zertifizierungsstelle deines Unternehmens ausgestellt werden. Mit dieser Methode stellst du sicher, dass deine Verbindung sicher und authentifiziert ist.
Der Wert Encrypted
¶
Mit dem optionalen Wert Encrypted
kannst du die SSL Verschlüsslung für die Schnittstelle deaktivieren. Diese Option existiert nur zu Testzwecken.
Warnung
Deaktiviere niemals die Verschlüsslung in einer Produktiven Umgebung!
Der Wert KeepAliveInterval
¶
Mit dem optionalen Wert KeepAliveInterval
änderst du, wie oft Testpakete an den Client geschickt werden. Mit diesen Testpaketen wird überprüft, ob die Verbindung mit dem Client noch besteht und dieser funktioniert.
Der Wert ist dabei die Anzahl von Sekunden zwischen zwei Paketen. Der empfohlene Wert, und damit auch der Default, ist 10 Sekunden. Ändere diesen nur falls dieser zu Problemen führt.
Mit dem Wert 0
deaktivierst du die Testpakete ganz. Wir raten von dieser Erstellung ab, da speziell Windows-Systeme getrennte Verbindungen noch Minuten aufrechterhalten. In bestimmten Situationen kann dies zu Verbindungsproblemen führen.
1<Module name="Network">
2 ...
3 <Value name="KeepAliveInterval">10</Value>
4 <Value name="KeepAliveTimeout">15</Value>
5 ...
6</Module>
Der Wert KeepAliveTimeout
¶
Mit dem optionalen Wert KeepAliveTimeout
änderst du, nach wie vielen Sekunden eine Verbindung als unterbrochen gilt.
Sendet ein Client nicht innerhalb der angegeben Zeit eine Antwort, wird die Verbindung Serverseitig unterbrochen. Der Test findet in den Intervallen wie mit KeepAliveInterval
statt, daher sollte KeepAliveTimeout
ein mehrfaches dieses Intervals sein.
Der Minimale Wert ist 1
Sekunde. Lässt du diesen Wert weg, wird der Default von 15
Sekunden verwendet.
1<Module name="Network">
2 ...
3 <Value name="KeepAliveInterval">10</Value>
4 <Value name="KeepAliveTimeout">15</Value>
5 ...
6</Module>
Das Client Modul¶
Das Client
Modul existiert für spätere Erweiterungen in denen die Konfiguration für den Raptor Client zentral ausgeliefert wird. Aktuell wird dieses Modul nicht verwendet und enthält keine Konfigurationswerte.
Das Konfigurationsschema¶
Module
Client
Das Authentifizierung Modul¶
Das Module Authentication
konfiguriert die Authentifizierung von Clients mit dem Raptor System.
Das Konfigurationsschema¶
Module
Authentication
Default Value:
Yes
Der Wert ModuleOrder
¶
Mit dem Wert ModuleOrder
legst du die Reihenfolge weg, in der die Erweiterungen für eine Authentifizierung abgefragt werden. Dabei gibst du die Bezeichner der Module mit Whitespace getrennt an.
Mögliche Werte findest du in der folgenden Tabelle:
Bezeichner |
Beschreibung |
---|---|
|
Diese Erweiterung verwendet einen Active Directory Server für die Authentifizierung. |
|
Diese Erweiterung verwendet eine lokale XML Datei für die Authentifizierung. |
1<Module name="Authentication">
2 <Value name="ModuleOrder">
3 ActiveDirectory
4 LocalFile
5 </Value>
6 <Value name="RequiredGroup">
7 Administrators
8 SpecialTestGroup
9 Users
10 </Value>
11</Module>
Der Wert RequiredGroup
¶
Mit dem Wert RequiredGroup
gibst du einen oder mehrere Gruppennamen an, in welcher ein Benutzer Mitglied sein muss um sich am Raptor System anzumelden. Der Benutzer muss dabei Mitglied von mindestens einer der angegebenen Gruppen sein. Mehrere Gruppennamen werden mit Whitespace getrennt und die Gross-/Kleinschreibung wird unterschieden.
Gibst du in diesem Wert keine Gruppennamen an, lässt ihn also leer, dann wird jeder Benutzer der sich authentifizieren kann zugelassen.
1<Module name="Authentication">
2 <Value name="ModuleOrder">
3 ActiveDirectory
4 LocalFile
5 </Value>
6 <Value name="RequiredGroup">
7 Administrators
8 SpecialTestGroup
9 Users
10 </Value>
11</Module>
Der Wert Enabled
¶
Mit dem optionalen Wert Enabled
kannst du das Authentifizierungssystem zu Testzwecken deaktivieren. Lässt du diesen Wert weg, ist das Authentifizierungssystem aktiviert.
Wir empfehlen diesen Wert niemals einzusetzen.
Warnung
Deaktiviere niemals das Authentifizierungssystem in einer produktiven Umgebung!
Ist das Authentifizierungssystem deaktiviert laufen wegen fehlender Daten nicht alle Prozesse so wie in einem System mit eingeschalteter Authentifizierung. Daher kann es in bestimmten Situationen zu unerwartetem Verhalten kommen.
Beispiel¶
In dem folgenden Beispiel ist die Authentifizierung aktiviert und verwendet nur die Active Directory Erweiterung dafür. Ein Benutzer muss entweder in der Gruppe Administrators
oder SpecialTest
sein, damit er sich am Raptor System anmelden kann.
<Module name="Authentication">
<Value name="ModuleOrder">
ActiveDirectory
</Value>
<Value name="RequiredGroup">
Administrators
SpecialTest
</Value>
</Module>
Das Daten Modul¶
Mit dem Modul Data
konfigurierst du den Datenspeicher im Raptor Server und die Organisation und Präsentation der Daten.
Das Konfigurationsschema¶
Module
Data
Must not be empty.
Must not be empty.
Must match this regular expression:
[a-z0-9][-a-z0-9]*(?:=[^= ]+)?
Must not have duplicates.
Must not be empty.
Must match this regular expression:
name|[_a-z0-9]{1,64}/[_a-z0-9]{1,64}
Minimum value:
10
Maximum value:
100000
Must match this regular expression:
(?:(?:[0-1][0-9]|2[0-3]):[0-5][0-9]|[1-9]\d{0,2}[hm])
Der Wert SectionOrder
¶
Mit dem Wert SectionOrder
konfigurierst du die Reihenfolge in der die Abschnitte im Client angezeigt werden. Dabei gibst du die Bezeichner für die Abschnitte mit Whitespace getrennt an.
Jede Erweiterung kann eigene neue Abschnitte hinzufügen, und teilweise kannst du in der Konfiguration einer Erweiterung eigene Abschnitte definieren. Die Bezeichner der Abschnitte in den Erweiterungen findest du in der Dokumentation der jeweiligen Erweiterung.
Einige häufig verwendete Bezeichner findest du in der folgenden Tabelle:
Bezeichner |
Beschreibung |
---|---|
|
Alle Erweiterungen können Grundlegende Werte in diesem Abschnitt anzeigen. |
|
Der Abschnitt der Active Directory Erweiterung. |
Grundsätzlich wird der Bezeichner des Abschnitts aus dem Titel gebildet. Dabei werden alle Leerzeichen aus dem Titel entfernt und jedes Wort, ausser dem ersten, mit einem Grossbuchstaben geschrieben. Die folgende Tabelle zeigt dir einige Beispiele für Abschnittstitel und deren Bezeichner:
Titel |
Bezeichner |
---|---|
|
|
|
|
|
|
|
|
|
|
1<Module name="Data">
2 <Value name="SectionOrder">
3 primary
4 activeDirectory
5 terminalServices
6 quota
7 xenapp
8 </Value>
9 ....
10</Module>
Der Wert EnableContextMerge
¶
Mit dem Wert EnableContextMerge
aktivierst du das Zusammenführen von verschiedenen Kontexten. Das kann notwendig sein, falls du Daten aus unterschiedlichen Quellen empfängst welche zusammengehören, aber verschiedenen Kontexten zugeordnet werden.
Mögliche Werte sind:
|
Kontexte werden nicht zusammengeführt. Nur Informationen welche den exakt selben Objektnamen und Kontext haben werden automatisch zu einem Objekt zusammengefasst. |
|
Die konfigurierten Transformationen in der Liste |
1<Module name="Data">
2 ...
3 <Value name="EnableContextMerge">Yes</Value>
4 <List name="ContextTransformation">
5 <ListEntry>
6 <Value name="From">educateit</Value>
7 <Value name="To">educateit.intra</Value>
8 </ListEntry>
9 <ListEntry>
10 <Value name="From">sub.foo.com</Value>
11 <Value name="To">foo.com</Value>
12 </ListEntry>
13 </List>
14 ...
15</Module>
Die Liste ContextTransformation
¶
Mit der Liste ContextTransformation
konfigurierst du welche Kontexte zusammengefasst werden können. Dabei gibst du in jedem Eintrag der Liste die Quelle mit From
und das Ziel mit To
an.
Eine Transformation kann nur von einem Kontext der bei From
angegeben ist, zu einem Kontext der bei To
angegeben ist stattfinden.
1<Module name="Data">
2 ...
3 <Value name="EnableContextMerge">Yes</Value>
4 <List name="ContextTransformation">
5 <ListEntry>
6 <Value name="From">educateit</Value>
7 <Value name="To">educateit.intra</Value>
8 </ListEntry>
9 <ListEntry>
10 <Value name="From">sub.foo.com</Value>
11 <Value name="To">foo.com</Value>
12 </ListEntry>
13 </List>
14 ...
15</Module>
Der Wert From
und To
¶
Mit den Werten From
und To
konfigurierst du die Quelle und das Ziel einer Transformation. Ein Kontext kann nur von der Quelle zu dem Ziel transformiert werden, aber nicht in die andere Richtung.
Die Gross-/Kleinschreibung der konfigurierten Werte wird ignoriert.
Beispiel¶
In dem folgenden Beispiel sind zwei Transformationen konfiguriert. Die erste von dem Kontext educateit
zu dem Kontext educateit.intra
und die zweite von educateit.ch
zu educateit.intra
. In beiden Fällen ist educateit.intra
das Ziel der Transformation, welches der gewünschte Hauptkontext der Konfiguration ist.
<List name="ContextTransformation">
<ListEntry>
<Value name="From">educateit</Value>
<Value name="To">educateit.intra</Value>
</ListEntry>
<ListEntry>
<Value name="From">educateit.ch</Value>
<Value name="To">educateit.intra</Value>
</ListEntry>
</List>
Die folgende Tabelle enthält jeweils zwei Objekte, mit dem Namen und Kontext durch ein @
-Zeichen getrennt. Darunter ist beschrieben, ob eine Transformation stattfindet und welche.
Objekt 1 |
Objekt 2 |
---|---|
|
|
Es findet keine Transformation statt, da die beiden Objekte unterschiedliche Namen haben. |
|
|
|
Die beiden Objekte werden zusammengeführt in dem Objekt |
|
|
|
Die beiden Objekte werden zusammengeführt in dem Objekt |
|
|
|
Die beiden Objekte werden zusammengeführt in dem Objekt |
|
|
|
Es findet keine Transformation statt. Es ist keine Regel definiert welche eine Transformation zwischen diesen Kontexten regelt. |
Die Gruppe ActionHandler
¶
Die Gruppe ActionHandler
definiert den Pfad des Programs und dessen Default-Optionen welches bei einer Aktion im Client gestartet wird. Normalerweise definierst du hier den Pfad zu EducateIT Actions.
<Group name="ActionHandler">
<Value name="Command">%PROGRAM_FILES%/EducateIT/ActionsClient/ActionsClient.exe</Value>
<Value name="DefaultArguments">
connectToServer=example:12837
</Value>
</Group>
Der Wert Command
¶
Mit dem Wert Command
konfigurierst du den absoluten Pfad zu dem Program, welches bei Aktionen gestartet wird. Dieses Program wird auf der Seite des Clients gestartet, im Kontext des Benutzers des Raptor Clients. Der Programmpfad muss daher dort verfügbar sein.
Die folgenden Platzhalter kannst du in diesem Pfad verwenden, sie werden durch den Client ersetzt.
Platzhalter |
Bedeutung |
---|---|
|
Dieser Platzhalter wird mit dem Inhalt der Umgebungsvariable |
|
Diese Platzhalter werden mit dem Basispfad für Programme ersetzt. In Microsoft Windows ist das beispielsweise |
Der Wert DefaultArguments
¶
Mit dem Wert DefaultArguments
konfigurierst du Optionen welche immer an das Program übergeben werden, unabhängig von der aufgerufenen Aktion. Die einzelnen Optionen müssen als name=wert
Paar, mit Whitespace getrennt angegeben werden. Leerzeichen sind daher in solchen Optionen nicht zulässig.
Für EducateIT Actions welches üblicherweise als Program für Aktionen verwendet wird, kann es sinn machen, den Verbindungsparameter als Option zu übergeben. Dies wird im folgenden Beispiel gezeigt:
<Group name="ActionHandler">
<Value name="Command">%PROGRAM_FILES%/EducateIT/ActionsClient/ActionsClient.exe</Value>
<Value name="DefaultArguments">
connectToServer=10.0.0.1:12837
</Value>
</Group>
Falls du mehrere Instanzen des Raptor Servers mit mehreren Instanzen des Actions Servers betreibst, zeigt dadurch jede Instanz automatisch auf den richtigen Server. Eine lokale Konfiguration des Actions System ist hier nicht mehr nötig.
Der Wert QuickSearchValues
¶
Im Wert QuickSearchValues` konfigurierst du eine Liste von Felder welche in der Schnellsuche berücksichtigt werden. Dabei gibst du eine Liste von Felder an, jeder geschrieben als InformationBlock/FeldName
. Die einzelnen Werte trennst du mit Whitespace.
Bei der Schnellsuche gibst du einen Text in das Suchfeld A ein und bekommst unmittelbar danach im Inhaltsbereich eine Liste mit Resultaten. Diese Liste hat eine Spalte Matched Field B, welche den Namen des Feldes enthält in dem der gesuchte Text gefunden wurde. Der gefundene Text wird zudem farblich hervorgehoben C.
Das folgende Beispiel zeigt wie diese Liste aussehen kann:
<Value name="QuickSearchValues">
name
ActiveDirectory/loginName
ActiveDirectory/commonName
ActiveDirectory/samAccountName
ActiveDirectory/displayName
ActiveDirectory/ldapPath
StaticFile/captured2
</Value>
Es ist wichtig, dass du hier die Bezeichner der Informationsblöcke und der Felder verwendest und nicht die im Client angezeigten Label. Zudem können nur Permanente Werte bei der Schnellsuche berücksichtigt werden.
Der Typ der durchsuchten Objekte spielt keine Rolle. Existiert eines der angegeben Felder nicht in dem Objekt, wird es einfach ignoriert. Optimierst du also die Schnellsuche für Benutzer und Computer Objekte, gibst du einfach alle Felder beider Objekttypen an. Aktuell ist es nicht möglich individuelle Suchfelder pro Typ festzulegen.
Reihenfolge der Werte¶
Die Reihenfolge der Felder gibt auch die Priorität des Werts an. In jedem Objekt werden die Werte in der angegeben Reihenfolge durchsucht und der erste Treffer wird im Resultat angezeigt. Kommt in unserer Beispielkonfiguration oben der gesuchte Text sowohl in dem Feld ActiveDirectory/commonName
und ActiveDirectory/displayName
vor, wird nur der commonName
Treffer angezeigt, da dieser vor dem Wert displayName
definiert wurde.
Bezeichner name
¶
Mit dem speziellen Bezeichner name
wählst du den Objektnamen als durchsuchtes Attribut aus. Wir empfehlen den Eintrag name
immer als ersten Eintrag in der Liste zu konfigurieren, damit der Benutzer einfach nach dem Namen von Objekten suchen kann.
Der Wert QuickSearchLimit
¶
Mit dem Wert QuickSearchLimit
definierst du, wie viele Objekte maximal bei einer Schnellsuche zurückgegeben werden. Das Minimum ist hier 10
und das Maximum 100000
.
Wir empfehlen einen Wert von 100
für die meisten Umgebungen. Grössere Werte können die Performance negativ beeinflussen, sind aber durchaus möglich.
Die Suche wird nach der angegeben Anzahl von Objekten abgebrochen, unabhängig davon wie diese im Speicher des Raptor Servers sortiert sind.
1<Module name="Data">
2 ...
3 <Value name="QuickSearchLimit">200</Value>
4 ...
5</Module>
Der Wert CachePurgeTime
¶
Mit dem optionalen Wert CachePurgeTime
konfigurierst du, wie oft der interne Cache bereinigt wird. Der Cache des Raptor Servers ist auf höchste Performance und minimale Speichernutzung optimiert. Um dieses Ziel zu erreichen, wird er nicht automatisch bereinigt. Längerfristig, ohne Bereinigung, wächst der Speicherverbrauch des Caches kontinuierlich und kann auf Systemen mit zuwenig RAM nach einigen Tagen oder Wochen zu einem Problem führen.
Als Wert kannst du hier entweder eine Uhrzeit im Format HH:MM
eingeben, oder ein Interval wie 5h
für alle fünf Stunden. Das Ziel dabei ist immer, den Cache so selten wie möglich zu bereinigen, da es während der Bereinigung zu einer kurzen Verzögerung von Abfragen kommen kann.
Lässt du den Wert weg, wird der interne Cache nie bereinigt. Wir gehen davon aus, dass du mit dieser Einstellungen den Raptor Server in regelmässigen Abständen neu startest.
Wir empfehlen entweder diesen Wert wegzulassen, und den Raptor Server mindestens einmal in der Woche neu zu starten. Oder alternativ eine Uhrzeit anzugeben, um den Cache einmal alle 24h zu bereinigen. Änderungen an dieser Einstellung solltest du in jedem Fall mit einem Speichermonitor überprüfen.
1<Module name="Data">
2 ...
3 <Value name="CachePurgeTime">8h</Value>
4 ...
5</Module>
Der Wert IdentifierMapTrace
¶
Der Wert IdentifierMapTrace
wird nur zu Testzwecken verwendet.
Das Kernel Modul¶
Mit dem Kernel Modul konfigurierst du einige wichtige Werte des Raptor Servers.
Das Konfigurationsschema¶
Module
Core
Minimum value:
10
Maximum value:
3600
Default Value:
30
Default Value:
Yes
Der Wert numberOfThreads
¶
Mit dem optionalen Wert numberOfThreads
konfigurierst du, wie viele Threads im Server gestartet werden um die verschiedenen Aufgaben zu bewältigen. Lässt du diesen Wert weg, wird der Default von 32
Threads verwendet. Der minimale Wert ist 8
.
Wir empfehlen für die meisten Systeme den Default von 32
Threads beizubehalten, dieser Wert bietet die beste Performance selbst bei stark genutzten Umgebungen.
1<Module name="Core">
2 <Value name="numberOfThreads">64</Value>
3</Module>
Der Wert extensionShutdownTimeout
¶
Mit dem Wert extensionShutdownTimeout
legst du die Anzahl der Sekunden fest, die auf das Herunterfahren einer Erweiterung gewartet werden soll, bevor sie terminiert wird. Der Wert muss zwischen 10 und 3600 Sekunden liegen. Standardmässig ist dieser Wert auf 30 Sekunden eingestellt.
1<Module name="Core">
2 ...
3 <Value name="extensionShutdownTimeout">120</Value>
4 ...
5</Module>
Der Wert terminateExtensionsOnTimeout
¶
Mit dem Wert terminateExtensionsOnTimeout
legst du fest, ob Erweiterungen terminiert werden sollen, wenn sie innerhalb der gewährten Zeit (festgelegt durch extensionShutdownTimeout
) nicht heruntergefahren werden. Der Standardwert ist auf „Yes“ gesetzt.
Werden die Threads einer Erweiterung terminiert während diese noch laufen, kann dies zu einem Crash der Anwendung führen.
1<Module name="Core">
2 ...
3 <Value name="terminateExtensionsOnTimeout">No</Value>
4 ...
5</Module>