UserManipulation/de
From OpenSimulator
(Created page with "__TOC__ =Introduction= Normally, users are created in OpenSimulator via the "create user" command on the region console (in standalone configuration) or on the ROBUST service...") |
|||
Line 1: | Line 1: | ||
__TOC__ | __TOC__ | ||
− | = | + | =Einführung= |
− | + | Normalerweise werden Benutzer in OpenSimulator über den Befehl "Benutzer erstellen" auf der Regionskonsole (in der Standalone-Konfiguration) oder auf der ROBUST-Servicekonsole (in der Grid-Konfiguration) erstellt. Benutzer können jedoch auch erstellt werden, indem ein XMLRPC-Aufruf direkt an den ROBUST-Dienst gesendet wird. | |
− | + | Diese Funktion ist seit OpenSimulator 0.7.3 verfügbar. Es kann derzeit nur in Grid-Konfiguration verwendet werden. Im Standalone-Modus können Benutzer über den anderen create user-Aufruf im [[RemoteAdmin]] Modul erstellt werden. | |
− | + | ||
=Setup= | =Setup= | ||
− | + | Die Listener für einige der XMLRPC-Aufrufe auf ROBUST müssen explizit aktiviert werden. Legen Sie im Abschnitt [UserAccountService] von Robust.ini fest | |
[UserAccountService] | [UserAccountService] | ||
Line 14: | Line 13: | ||
AllowSetAccount = true | AllowSetAccount = true | ||
− | + | und in [AuthenicationService] | |
[AuthenticationService] | [AuthenticationService] | ||
AllowSetPassword = true | AllowSetPassword = true | ||
− | + | Bitte beachten Sie, dass dadurch der Aufruf von UserAccountServiceConnector und AuthenticationServiceConnector verfügbar gemacht wird, wie im ServiceConnectiors-Parameter im Abschnitt [Startup] oben in der Datei aufgeführt. Der verwendete Standardport (8003) sollte anderen Benutzern nicht offengelegt werden. Um sich bei OpenSimulator anzumelden, müssen Sie nur den Port verfügbar machen, auf dem der LLLoginServiceInConnector ausgeführt wird (standardmäßig 8002). | |
− | + | Dies bedeutet auch, dass diese Einrichtungen derzeit nicht in einem offenen Netz (einem Netz, in dem nicht vertrauenswürdige Dritte Simulatoren anschließen können) aktiviert werden sollten. | |
− | == | + | ==Standard Avatar Einträge== |
− | + | Wenn Sie möchten, dass ein neuer Benutzer das anfängliche minimale Körperteil / Kleidungsset (Haut, Form, Augen, Haare, Hose, Hemd) hat, das erforderlich ist, damit er als etwas anderes als eine Wolke erscheint, dann stellen Sie sicher | |
[UserAccountService] | [UserAccountService] | ||
CreateDefaultAvatarEntries = true | CreateDefaultAvatarEntries = true | ||
− | in Robust.ini. | + | in der Robust.ini. Diese Einstellung gilt bereits in der Robust.ini.example von OpenSimulator 0.7.4 und höher. |
− | = | + | =Verwendung= |
− | == | + | ==Benutzer erstellen== |
− | + | Hier ist ein Beispiel-Python-Programm, um dies aufzurufen. Es wird davon ausgegangen, dass Ihre ROBUST Dienste auf localhost ausgeführt werden. | |
<source lang="python"> | <source lang="python"> | ||
Line 51: | Line 50: | ||
</source> | </source> | ||
− | PrincipalID | + | PrincipalID ist die eindeutige ID des Benutzers. |
− | + | Wenn alles gut geht, sollten Sie zurückkommen | |
<source lang="xml"> | <source lang="xml"> | ||
Line 72: | Line 71: | ||
</source> | </source> | ||
− | + | Machen Sie sich keine Sorgen um ScopeID, dies wird verwendet, um zu ermöglichen, dass mehrere Grids in einer einzigen Datenbank koexistieren. Erstellt ist ein Unix-Zeitstempel der Zeit, zu der der Benutzer erstellt wurde. UserLevel bestimmt, ob der Benutzer ein Gott ist (>= 200) oder sich überhaupt anmelden kann (<0). ServiceURLs sind HyperGrid bezogen und betreffen uns hier nicht. | |
− | + | Wenn der Anruf fehlschlägt, erhalten Sie folgende Antwort | |
<source lang="xml"> | <source lang="xml"> | ||
Line 83: | Line 82: | ||
</source> | </source> | ||
− | ==setaccount== | + | ==Konto einrichten setaccount== |
− | + | Hier ist ein Beispiel-Python-Programm, um dies aufzurufen. Es wird davon ausgegangen, dass Ihre ROBUST-Dienste auf localhost ausgeführt werden. | |
<source lang="python"> | <source lang="python"> | ||
Line 100: | Line 99: | ||
</source> | </source> | ||
− | PrincipalID | + | PrincipalID ist die eindeutige ID des Benutzers. Hier wird es verwendet, um den Benutzer zu identifizieren, den wir zuvor eingerichtet haben. |
− | + | Wenn alles gut geht, sollten Sie folgendes zurückkommen | |
<source lang="xml"> | <source lang="xml"> | ||
Line 121: | Line 120: | ||
</source> | </source> | ||
− | + | Beachten Sie, dass sich der Vorname jetzt von Jon zu Tyrion geändert hat. | |
− | + | Wenn der Anruf fehlschlägt, erhalten Sie folgende Antwort | |
<source lang="xml"> | <source lang="xml"> | ||
Line 132: | Line 131: | ||
</source> | </source> | ||
− | ==setpassword== | + | ==Passwort festlegen setpassword== |
− | + | Das Ändern eines Kennworts erfolgt über den Authentifizierungsdienst und nicht über den Benutzerkontodienst. Leider unterscheiden sich die erforderlichen Parameter geringfügig von denen, die vom Benutzerkontodienst verwendet werden. In diesem Fall müssen wir http://<robust-services-address>/auth/plain with METHOD = setpassword, PRINCIPAL = <principalID> und PASSWORD = <new-password>. aufrufen. | |
+ | |||
+ | Hier ist ein Beispiel | ||
<source lang="python"> | <source lang="python"> | ||
Line 148: | Line 149: | ||
</source> | </source> | ||
− | + | Dies zielt darauf ab, Wilma Flintstones Passwort auf bing zu setzen und sie mit der PrincipalID zu identifizieren, die wir zuvor erhalten haben. | |
+ | |||
+ | Bei Erfolg wird dies zurückgegeben | ||
<source lang="xml"> | <source lang="xml"> | ||
Line 157: | Line 160: | ||
</source> | </source> | ||
− | + | Bei Misserfolg, | |
<source lang="xml"> | <source lang="xml"> | ||
Line 166: | Line 169: | ||
</source> | </source> | ||
− | == | + | ==Einen Benutzer löschen== |
− | + | Dies ist derzeit wohl nicht möglich. Oder besser gesagt, niemand hat es getan und zurückgemeldet, ob noch alles funktioniert oder ob es viele Probleme gibt. | |
− | + | Der normale Weg, einen Benutzer zu „löschen“, besteht darin, seinen Benutzerlevel auf -1 zu setzen. Dadurch wird verhindert, dass sie sich anmelden. | |
− | + | Wenn Sie einen Benutzer mit demselben Namen erstellen müssen, benennen Sie zuerst den gelöschten Benutzer um (z. B. in Wilma Flintstone_<RANDOM-UUID>), | |
− | + | bevor Sie einen mit dem alten Namen erstellen. | |
− | + |
Revision as of 06:40, 6 April 2022
Contents |
Einführung
Normalerweise werden Benutzer in OpenSimulator über den Befehl "Benutzer erstellen" auf der Regionskonsole (in der Standalone-Konfiguration) oder auf der ROBUST-Servicekonsole (in der Grid-Konfiguration) erstellt. Benutzer können jedoch auch erstellt werden, indem ein XMLRPC-Aufruf direkt an den ROBUST-Dienst gesendet wird. Diese Funktion ist seit OpenSimulator 0.7.3 verfügbar. Es kann derzeit nur in Grid-Konfiguration verwendet werden. Im Standalone-Modus können Benutzer über den anderen create user-Aufruf im RemoteAdmin Modul erstellt werden.
Setup
Die Listener für einige der XMLRPC-Aufrufe auf ROBUST müssen explizit aktiviert werden. Legen Sie im Abschnitt [UserAccountService] von Robust.ini fest
[UserAccountService] AllowCreateUser = true AllowSetAccount = true
und in [AuthenicationService]
[AuthenticationService] AllowSetPassword = true
Bitte beachten Sie, dass dadurch der Aufruf von UserAccountServiceConnector und AuthenticationServiceConnector verfügbar gemacht wird, wie im ServiceConnectiors-Parameter im Abschnitt [Startup] oben in der Datei aufgeführt. Der verwendete Standardport (8003) sollte anderen Benutzern nicht offengelegt werden. Um sich bei OpenSimulator anzumelden, müssen Sie nur den Port verfügbar machen, auf dem der LLLoginServiceInConnector ausgeführt wird (standardmäßig 8002).
Dies bedeutet auch, dass diese Einrichtungen derzeit nicht in einem offenen Netz (einem Netz, in dem nicht vertrauenswürdige Dritte Simulatoren anschließen können) aktiviert werden sollten.
Standard Avatar Einträge
Wenn Sie möchten, dass ein neuer Benutzer das anfängliche minimale Körperteil / Kleidungsset (Haut, Form, Augen, Haare, Hose, Hemd) hat, das erforderlich ist, damit er als etwas anderes als eine Wolke erscheint, dann stellen Sie sicher
[UserAccountService] CreateDefaultAvatarEntries = true
in der Robust.ini. Diese Einstellung gilt bereits in der Robust.ini.example von OpenSimulator 0.7.4 und höher.
Verwendung
Benutzer erstellen
Hier ist ein Beispiel-Python-Programm, um dies aufzurufen. Es wird davon ausgegangen, dass Ihre ROBUST Dienste auf localhost ausgeführt werden.
#!/usr/bin/python import httplib import urllib params = urllib.urlencode({'METHOD':'createuser', 'FirstName':'Jon', 'LastName':'Snow', 'Password':'test', 'PrincipalID':'3a1c8128-908f-4455-8157-66c96a46f75e'}) conn = httplib.HTTPConnection("localhost", 8003); conn.request("POST", "/accounts", params) response = conn.getresponse() print response.read();
PrincipalID ist die eindeutige ID des Benutzers.
Wenn alles gut geht, sollten Sie zurückkommen
<?xml version="1.0"?> <ServerResponse> <result type="List"> <FirstName>Jon</FirstName> <LastName>Snow</LastName> <Email/> <PrincipalID>3a1c8128-908f-4455-8157-66c96a46f75e</PrincipalID> <ScopeID>00000000-0000-0000-0000-000000000000</ScopeID> <Created>1318974501</Created> <UserLevel>0</UserLevel> <UserFlags>0</UserFlags> <ServiceURLs>HomeURI*;GatekeeperURI*;InventoryServerURI*;AssetServerURI*;</ServiceURLs> </result> </ServerResponse>
Machen Sie sich keine Sorgen um ScopeID, dies wird verwendet, um zu ermöglichen, dass mehrere Grids in einer einzigen Datenbank koexistieren. Erstellt ist ein Unix-Zeitstempel der Zeit, zu der der Benutzer erstellt wurde. UserLevel bestimmt, ob der Benutzer ein Gott ist (>= 200) oder sich überhaupt anmelden kann (<0). ServiceURLs sind HyperGrid bezogen und betreffen uns hier nicht.
Wenn der Anruf fehlschlägt, erhalten Sie folgende Antwort
<?xml version="1.0"?> <ServerResponse> <result>Failure</result> </ServerResponse>
Konto einrichten setaccount
Hier ist ein Beispiel-Python-Programm, um dies aufzurufen. Es wird davon ausgegangen, dass Ihre ROBUST-Dienste auf localhost ausgeführt werden.
#!/usr/bin/python import httplib import urllib params = urllib.urlencode({'METHOD':'setaccount', 'FirstName':'Tyrion', 'PrincipalID':'3a1c8128-908f-4455-8157-66c96a46f75e'}) conn = httplib.HTTPConnection("localhost", 8003); conn.request("POST", "/accounts", params) response = conn.getresponse() print response.read();
PrincipalID ist die eindeutige ID des Benutzers. Hier wird es verwendet, um den Benutzer zu identifizieren, den wir zuvor eingerichtet haben.
Wenn alles gut geht, sollten Sie folgendes zurückkommen
<?xml version="1.0"?> <ServerResponse> <result type="List"> <FirstName>Tyrion</FirstName> <LastName>Snow</LastName> <Email/> <PrincipalID>3a1c8128-908f-4455-8157-66c96a46f75e</PrincipalID> <ScopeID>00000000-0000-0000-0000-000000000000</ScopeID> <Created>1318974501</Created> <UserLevel>0</UserLevel> <UserFlags>0</UserFlags> <ServiceURLs>HomeURI*;GatekeeperURI*;InventoryServerURI*;AssetServerURI*;</ServiceURLs> </result> </ServerResponse>
Beachten Sie, dass sich der Vorname jetzt von Jon zu Tyrion geändert hat.
Wenn der Anruf fehlschlägt, erhalten Sie folgende Antwort
<?xml version="1.0"?> <ServerResponse> <result>Failure</result> </ServerResponse>
Passwort festlegen setpassword
Das Ändern eines Kennworts erfolgt über den Authentifizierungsdienst und nicht über den Benutzerkontodienst. Leider unterscheiden sich die erforderlichen Parameter geringfügig von denen, die vom Benutzerkontodienst verwendet werden. In diesem Fall müssen wir http://<robust-services-address>/auth/plain with METHOD = setpassword, PRINCIPAL = <principalID> und PASSWORD = <new-password>. aufrufen.
Hier ist ein Beispiel
#!/usr/bin/python import httplib import urllib params = urllib.urlencode({'METHOD':'setpassword', 'PRINCIPAL' : '3a1c8128-908f-4455-8157-66c96a46f75e', 'PASSWORD':'bing'}) conn = httplib.HTTPConnection("localhost", 8003); conn.request("POST", "/auth/plain", params) response = conn.getresponse() print response.read();
Dies zielt darauf ab, Wilma Flintstones Passwort auf bing zu setzen und sie mit der PrincipalID zu identifizieren, die wir zuvor erhalten haben.
Bei Erfolg wird dies zurückgegeben
<?xml version="1.0"?> <ServerResponse> <Result>Success</Result> </ServerResponse>
Bei Misserfolg,
<?xml version="1.0"?> <ServerResponse> <Result>Failure</Result> </ServerResponse>
Einen Benutzer löschen
Dies ist derzeit wohl nicht möglich. Oder besser gesagt, niemand hat es getan und zurückgemeldet, ob noch alles funktioniert oder ob es viele Probleme gibt. Der normale Weg, einen Benutzer zu „löschen“, besteht darin, seinen Benutzerlevel auf -1 zu setzen. Dadurch wird verhindert, dass sie sich anmelden. Wenn Sie einen Benutzer mit demselben Namen erstellen müssen, benennen Sie zuerst den gelöschten Benutzer um (z. B. in Wilma Flintstone_<RANDOM-UUID>), bevor Sie einen mit dem alten Namen erstellen.