Token

Stellen Sie sich vor, Sie haben einen Online-Shop für Kleidung aufgebaut. Die Produkte, die Sie im Content-Studio eingetragen haben, sollen auf der Shop-Website abgerufen und Ihren Kundinnen und Kunden angezeigt werden. Diese Website ist allerdings kein Mensch, sondern ein Programm. Sie kann sich nicht wie ein Mensch mit Benutzername und Passwort anmelden. Für diesen Fall gibt es den Token: einen geheimen Schlüssel, der ausgegeben wird, damit eine Website oder ein Programm anstelle eines Menschen auf Inhalte zugreifen kann.

Stellen Sie sich einen Token als einen einzelnen Schlüssel vor, der ein Schloss öffnet. Wer diesen Schlüssel besitzt, kann auch ohne Anmeldung innerhalb eines festgelegten Bereichs mit Inhalten arbeiten. Deshalb müssen Sie einen Token genauso behandeln wie ein Passwort. Sie dürfen ihn niemandem zeigen, und wenn er nach außen gelangt, kann die Person, die ihn besitzt, dieselben Rechte ungehindert nutzen.

In WEEGLOO gibt es drei Arten von Schlüsseln mit unterschiedlichem Zweck: einen mächtigen Schlüssel, der das gesamte Konto vertritt (Personal Access Token), einen Schlüssel, der innerhalb eines Space Inhalte liest und schreibt (Space Access Token), und einen schreibgeschützten Schlüssel, um Inhalte zum Lesen an eine öffentliche Website auszuliefern (Delivery Access Token). Auf dieser Seite sehen Sie sich zunächst an, was die drei Schlüssel jeweils sind und wann sie eingesetzt werden, und geben sie anschließend direkt im Content-Studio aus.

Die drei Schlüssel dienen unterschiedlichen Zwecken

Die Unterschiede zwischen den dreien lassen sich zunächst so auf einen Blick zusammenfassen.

Personal Access TokenSpace Access TokenDelivery Access Token
Geltungsbereichdas gesamte ausgebende Kontoein bestimmtes einzelnes Spaceein bestimmtes einzelnes Space
Lesen/SchreibenLesen und SchreibenLesen und Schreibennur Lesen von Inhalten im Status Published (veröffentlicht)
Wo er hinterlegt wirdnur auf einem Serverauf Server oder Client, mit eng gefasster Rolledarf in eine öffentliche Website eingesetzt werden
Berechtigungsumfanggenau die Kontorechte (nicht einschränkbar)nur so weit wie die gebundene SpaceRolenur so weit wie die gebundene SpaceRole
Wofür er verwendet wirdVerwaltungsaufgaben über das gesamte Kontoein Server oder Client, der Inhalte in ein Space schreibt (z. B. Beiträge ohne Anmeldung hinterlassen)wenn eine öffentliche Website veröffentlichte Inhalte abruft und anzeigt

Der Kern ist dieser: Der Personal Access Token ist eher ein Generalschlüssel, der eine einzelne Person vollständig vertritt; der Space Access Token ist ein Schlüssel, der nur innerhalb eines Space Inhalte liest und schreibt; der Delivery Access Token ist ein schreibgeschützter Schlüssel, der veröffentlichte Inhalte nur ausliest. Je nachdem, ob Ihr Vorhaben das gesamte Konto betrifft, innerhalb eines Space auch schreibt oder auf einer öffentlichen Website nur liest, wählen Sie den passenden Schlüssel.

Der das gesamte Konto vertretende Schlüssel: Personal Access Token

Der Personal Access Token ist ein Schlüssel, der die Rechte des ausgebenden Kontos selbst unverändert nutzt. Mit diesem Schlüssel können Sie ohne Anmeldung genau das tun, was dieses Konto im Content-Studio tun kann. Sogar Verwaltungsaufgaben wie das Eintragen, Bearbeiten oder Veröffentlichen von Produkten sind damit möglich.

Deshalb ist dieser Schlüssel mächtig. Wenn Sie ihn einem Programm geben, das anstelle eines Menschen automatisch Inhalte hochlädt und ändert, kann dieses Programm wie der Kontoinhaber arbeiten. Für Verwaltungsaufgaben, bei denen Sie zwischen mehreren Space wechseln oder sogar Space-Einstellungen bearbeiten müssen, brauchen Sie diesen Schlüssel. Umgekehrt gilt: Wenn Sie innerhalb eines einzelnen Space nur Inhalte lesen und schreiben müssen, ist es sicherer, statt dieses das gesamte Konto vertretenden Schlüssels die Rechte mit dem weiter unten beschriebenen Space Access Token einzugrenzen.

So mächtig er ist, so vorsichtig müssen Sie mit ihm umgehen. Diesen Schlüssel dürfen Sie nicht in einen öffentlichen Client einsetzen, der an Ihre Kundinnen und Kunden ausgeliefert wird. Wenn Sie ihn an einer öffentlichen Stelle hinterlegen, kann ihn jede Person herausziehen, und wer ihn in die Hand bekommt, kann die Rechte des ausgebenden Kontos ungehindert nutzen. Wenn Sie auf einer öffentlichen Website Produkte nur abrufen und anzeigen möchten, verwenden Sie statt dieses mächtigen Schlüssels den unten beschriebenen Delivery Access Token.

Beim Ausgeben eines Personal Access Token legen Sie nur einen Namen fest. Einen Berechtigungsumfang wählen Sie nicht gesondert aus, denn er erbt genau die Rechte, die das ausgebende Konto besitzt.

Der in einem Space lesende und schreibende Schlüssel: Space Access Token

Der Space Access Token ist ein Schlüssel, der nur innerhalb eines bestimmten einzelnen Space verwendet wird. Anders als der Delivery Access Token, der nur lesen kann, können Sie mit diesem Schlüssel die Inhalte in diesem Space nicht nur lesen, sondern auch schreiben. Das Neuanlegen oder Ändern von Produkten kann ein Programm übernehmen, ohne dass sich ein Mensch anmeldet.

Stellen Sie sich zum Beispiel vor, Sie möchten Ihren Kundinnen und Kunden ermöglichen, auf der Shop-Website Anfragen zu hinterlassen, ohne sich anzumelden. Der Client, den die Kundschaft nutzt, muss diesen Beitrag neu in den Space des Bekleidungsshops schreiben, doch mit dem schreibgeschützten Delivery Access Token lässt sich nichts schreiben. Legen Sie jedoch den Personal Access Token, der das gesamte Konto vertritt, in den Client, ist bei einem Leck dieses Schlüssels nicht nur der Bekleidungsshop, sondern alles gefährdet, was das Konto erreicht. Für diesen Fall gibt es den Space Access Token, der nur innerhalb eines Space auch schreiben kann. Ein solcher Fall, in dem ein Client der Kundschaft Inhalte schreibt, ist der typische Einsatz dieses Schlüssels; ebenso wird er verwendet, wenn ein Server Inhalte automatisch anlegt und ändert.

Der Space Access Token wirkt nur innerhalb eines Space. Er kann zwar die Inhalte des Space des Bekleidungsshops lesen und schreiben, aber er kann nicht in andere Space hineinsehen, die Einstellungen des Space ändern oder die Organisation und das Konto berühren. Deshalb ist er selbst bei derselben Schreibaufgabe sicherer als der Personal Access Token.

Wo Sie diesen Schlüssel hinterlegen, richtet sich nach dem Einsatz. Sie können ihn auf einem Server hinterlegen oder in dem Client, den die Kundschaft nutzt. Die Sicherheit wahren Sie nicht dadurch, dass Sie den Schlüssel irgendwo verstecken, sondern indem Sie die gebundene Rolle passend zum Einsatz eng fassen. Deshalb ist als Nächstes wichtig, wie Sie die Rolle binden.

Binden Sie eine Rolle, um den Lese- und Schreibbereich festzulegen

Auch beim Ausgeben eines Space Access Token legen Sie über eine SpaceRole (Rolle) fest, wie weit dieser Schlüssel gehen darf, und binden sie zusammen mit dem Schlüssel. Anders als die Rolle des Delivery Access Token, die festlegt, "wie weit gelesen werden darf", legt die Rolle des Space Access Token fest, "wie weit gelesen und geschrieben werden darf".

Die gebundene Rolle fassen Sie passend dazu ein, wo der Schlüssel liegt. Bei einem Schlüssel, der auf einem Server Produkte automatisch anlegt und ändert, binden Sie eine Rolle, die für die Produkte (Content) nur Read, Create und Edit erlaubt und Delete sowie Publish nicht aufnimmt. Bei einem Schlüssel dagegen, der in einem Client der Kundschaft liegt und nur Anfragen entgegennimmt, binden Sie eine engere Rolle, die nur das Neuanlegen (Create) der "Anfrage" erlaubt. Dann lässt sich selbst bei einem Leck dieses Werts nichts außerhalb des jeweils Erlaubten tun.

Binden Sie nicht die Rolle Administrator, mit der sich alles handhaben lässt. Je mehr ein Schlüssel auch schreiben kann und je eher er an einer für die Kundschaft sichtbaren Stelle liegt, desto sicherer ist es, eine so enge Rolle zu binden, dass Sie ein Leck verkraften können.

Wie Sie eine Rolle erstellen, die Schreiben erlaubt, behandelt Rollen und Berechtigungen. Die dort erstellte Rolle "Verantwortlich für Produktanlage" ist ein Beispiel für eine Schreibrolle, die das Anlegen und Bearbeiten von Produkten erlaubt.

Der in einem Space nur lesende Schlüssel: Delivery Access Token

Der Delivery Access Token ist ein schreibgeschützter Schlüssel, der nur innerhalb eines bestimmten einzelnen Space gilt. Mit diesem Schlüssel können Sie innerhalb dieses Space ausschließlich Inhalte im Status Published (veröffentlicht) auslesen. Inhalte im Status Draft, die nicht veröffentlicht wurden, lassen sich mit diesem Schlüssel nicht lesen, und bearbeiten oder löschen können Sie damit ebenfalls nichts.

Genau dies ist der Schlüssel, den die Shop-Website Ihrer Kundinnen und Kunden verwendet, um Produkte abzurufen und anzuzeigen. Die Website muss Produkte nur anzeigen, nicht eintragen oder löschen, deshalb reicht ein enger Schlüssel aus, der ausschließlich lesen kann. Selbst wenn dieser Schlüssel nach außen gelangt, lassen sich damit nur veröffentlichte Inhalte lesen, beschädigen lassen sich die Inhalte jedoch nicht.

Was es bedeutet, Inhalte zu veröffentlichen (Published), und warum sie erst nach dem Veröffentlichen nach außen freigegeben (ausgeliefert) werden, behandelt Status und Veröffentlichung.

Begrenzen Sie den Leseumfang, indem Sie eine enge Rolle binden

Wenn Sie einen Delivery Access Token ausgeben, legen Sie über eine SpaceRole (Rolle) fest, wie weit dieser Schlüssel lesen darf, und binden sie zusammen mit dem Schlüssel. Eine Rolle ist ein Bündel von Rechten, das festlegt, "was und mit welchen Aktionen man tun darf". Wenn Sie dem Schlüssel eine Rolle binden, kann dieser Schlüssel nur so weit lesen, wie die gebundene Rolle es erlaubt.

Bei einer Shop-Website müssen nur die "Produkte" gelesen werden. Erstellen Sie deshalb eine enge Rolle, die für die Produkte (Content) nur Read erlaubt, und binden Sie sie. Selbst wenn dieser Schlüssel dann nach außen gelangt, lassen sich nur die Produktinformationen lesen, andere Inhalte oder Mitgliederinformationen gelangen nicht nach außen.

Binden Sie nicht die Rolle Administrator, mit der sich alles handhaben lässt. Administrator ist die Rolle mit den höchsten Rechten, mit der sich alles innerhalb dieses Space handhaben lässt. Wenn Sie einem Schlüssel für eine öffentliche Website, der nur lesen muss, derart weitreichende Rechte binden, steigt das Risiko, falls der Schlüssel nach außen gelangt. Sicherer ist es, eine eigene Rolle zu erstellen und zu binden, die so eingeschränkt ist, dass nur das Nötige gelesen wird.

Wie Sie eine Rolle erstellen und die Rechte einschränken, behandelt Rollen und Berechtigungen. Erstellen Sie anhand dieser Seite vorab die Rolle, die nur das Lesen von Produkten erlaubt und an den Schlüssel für die öffentliche Website gebunden wird.

Mit dem ausgegebenen Geheimwert umgehen

Bei allen drei Schlüsseln erscheint nach Abschluss der Ausgabe ein geheimer Token-Wert auf dem Bildschirm. Dieser Wert ist der Schlüssel selbst. Diesen Wert verwenden Sie, wenn Sie ihn in einen Server oder eine Website einsetzen. Kopieren Sie ihn direkt nach der Ausgabe an Ort und Stelle und bewahren Sie ihn auf. Sie können ihn auch auf der Detailseite des Tokens erneut einsehen.

Allerdings werden die Schlüssel an unterschiedlichen Orten hinterlegt.

  • Behandeln Sie den Personal Access Token wie ein Passwort. Da er ein mächtiger Schlüssel ist, bewahren Sie ihn nur auf dem Server auf und setzen Sie ihn nicht in einen öffentlichen Client, den Ihre Kundschaft sieht, oder in Code, den andere einsehen können.
  • Beim Space Access Token stimmen Sie über die gebundene Rolle ab, wo Sie ihn hinterlegen. Binden Sie an einen Schlüssel, der auf einem Server liegt, eine Schreibrolle im nötigen Umfang, und an einen Schlüssel, der in einem an die Kundschaft ausgelieferten Client liegt, eine so enge Rolle, dass Sie ein Leck verkraften können (z. B. nur das Neuanlegen einer einzigen Art von Beitrag). Binden Sie Administrator oder weitreichende Schreibrollen nicht an Schlüssel, die an einer öffentlichen Stelle liegen.
  • Der Delivery Access Token ist umgekehrt dafür gedacht, in die öffentliche Website eingesetzt zu werden, die Ihre Kundinnen und Kunden sehen. Zwar kann jede Person, die die Website öffnet, diesen Wert einsehen, doch weil Sie eine enge Rolle gebunden haben, kann niemand, der diesen Wert erlangt, etwas außerhalb des Leseumfangs tun, den diese Rolle erlaubt. Deshalb ist es an sich kein Problem, ihn in die Website einzusetzen. Verbreiten Sie ihn jedoch nicht leichtfertig über die vorgesehene Website hinaus.

Wenn Sie einen Schlüssel verloren haben oder er anders als beabsichtigt verwendet worden zu sein scheint, löschen Sie diesen Schlüssel, geben einen neuen aus und tauschen ihn aus.

Einen Personal Access Token ausgeben

Geben Sie einen Personal Access Token aus, den Sie dem Programm geben, das jede Nacht automatisch neue Produkte hochlädt.

  1. Öffnen Sie in den Kontoeinstellungen den Bildschirm Personal Access Token.
  2. Drücken Sie oben rechts die Schaltfläche Erstellen.
  3. Geben Sie in das Namensfeld Nächtlicher Upload neuer Produkte ein. Dieser Name dient dazu, später zu erkennen, für welchen Zweck der Schlüssel erstellt wurde.
  4. Drücken Sie die Schaltfläche Speichern, um ihn auszugeben.

Bildschirm im Dialog zur Ausgabe eines Personal Access Token, in dem der Name "Nächtlicher Upload neuer Produkte" eingegeben ist

Nach Abschluss der Ausgabe erscheint der geheime Token-Wert auf dem Bildschirm. Kopieren Sie ihn an Ort und Stelle und bewahren Sie ihn an einem sicheren Ort auf. Der Bildschirm sieht aus wie das Ergebnis der Ausgabe des Delivery Access Token weiter unten.

Einen Space Access Token ausgeben

Diesmal geben Sie einen Space Access Token aus, den ein Server verwendet, um im Space des Bekleidungsshops Produkte automatisch anzulegen. Dieser Schlüssel wird im Space des Bekleidungsshops verwendet und zusammen mit einer Rolle gebunden, die Produkte anlegen und bearbeiten darf.

Zunächst muss die Rolle, die an diesen Schlüssel gebunden wird, im Space vorhanden sein. Erstellen Sie unter Rollen und Berechtigungen vorab eine Rolle, die für die Produkte (Content) Read, Create und Edit erlaubt. Im Folgenden gehen wir davon aus, dass Sie diese Rolle unter dem Namen Verantwortlich für Produktanlage erstellt haben.

Der Bildschirm zur Ausgabe und Verwaltung befindet sich in denselben Space-Einstellungen wie beim Delivery Access Token.

  1. Öffnen Sie in den Einstellungen des Space des Bekleidungsshops den Bildschirm Space Access Token.
  2. Drücken Sie oben rechts die Schaltfläche Erstellen.
  3. Geben Sie in das Namensfeld Server für automatische Produktanlage ein.
  4. Wählen Sie unter Space Role die Rolle Verantwortlich für Produktanlage. Wählen Sie nicht Administrator.
  5. Drücken Sie die Schaltfläche Erstellen, um ihn auszugeben.

Bildschirm im Dialog zum Erstellen eines Space Access Token, in dem der Name "Server für automatische Produktanlage" eingegeben und die Rolle "Verantwortlich für Produktanlage" ausgewählt ist

Nach Abschluss der Ausgabe erscheint der geheime Token-Wert auf dem Bildschirm. Kopieren Sie ihn an Ort und Stelle und bewahren Sie ihn an einem sicheren Ort auf. Da hier eine Rolle gebunden wurde, die Produkte anlegen und bearbeiten darf, verwenden Sie diesen Schlüssel auf einem Server, der diese Rolle benötigt. Wenn Sie ihn direkt in einen Client der Kundschaft legen müssen, geben Sie dafür gesondert einen Schlüssel aus, an den eine engere Rolle gebunden ist, die Sie bei einem Leck verkraften können. Der Bildschirm sieht aus wie das Ergebnis der Ausgabe des Delivery Access Token weiter unten.

Einen Delivery Access Token ausgeben

Diesmal geben Sie einen Delivery Access Token aus, den die Shop-Website verwendet, um Produkte abzurufen und anzuzeigen. Dieser Schlüssel wird im Space des Bekleidungsshops verwendet und zusammen mit einer engen Rolle gebunden, die Produkte lesen darf.

Zunächst muss die Rolle, die an diesen Schlüssel gebunden wird, im Space vorhanden sein. Erstellen Sie unter Rollen und Berechtigungen vorab eine Rolle, die für die Produkte (Content) nur Read erlaubt. Im Folgenden gehen wir davon aus, dass Sie diese Rolle unter dem Namen Produkte nur lesen erstellt haben.

  1. Öffnen Sie in den Einstellungen des Space des Bekleidungsshops den Bildschirm Delivery Access Token.
  2. Drücken Sie oben rechts die Schaltfläche Erstellen.
  3. Geben Sie in das Namensfeld Auslieferung an Shop-Website ein.
  4. Im Beschreibungsfeld können Sie eintragen, wofür dieser Schlüssel verwendet wird. (Das ist optional.)
  5. Wählen Sie unter Space Role die Rolle Produkte nur lesen. Wählen Sie nicht Administrator.
  6. Drücken Sie die Schaltfläche Erstellen, um ihn auszugeben.

Bildschirm im Dialog zur Ausgabe eines Delivery Access Token, in dem der Name und die Rolle "Produkte nur lesen" ausgewählt sind

Nach Abschluss der Ausgabe erscheint der geheime Token-Wert auf dem Bildschirm. Kopieren Sie ihn an Ort und Stelle und bewahren Sie ihn an einem sicheren Ort auf.

Bildschirm, der nach der Ausgabe des Delivery Access Token darauf hinweist, den Geheimwert zu kopieren. Der Geheimwert wurde aus Sicherheitsgründen verdeckt

Löschen Sie Schlüssel, die Sie nicht mehr verwenden

Schlüssel, die Sie nicht mehr verwenden, sollten Sie nicht stehen lassen, sondern aus Sicherheitsgründen löschen. Suchen Sie in der Token-Liste den Schlüssel, den Sie nicht mehr verwenden, und löschen Sie ihn. Wenn Sie einen Schlüssel löschen, ist mit ihm kein Zugriff mehr möglich. Dasselbe gilt, wenn ein Schlüssel nach außen gelangt zu sein scheint. Löschen Sie den verdächtigen Schlüssel, geben einen neuen aus und tauschen ihn aus.

Was als Nächstes zu tun ist

  • Rollen und Berechtigungen: Erstellen Sie die schreibgeschützte Rolle, die an den Delivery Access Token gebunden wird, und die lesende und schreibende Rolle, die an den Space Access Token gebunden wird.
  • Status und Veröffentlichung: Mit dem Delivery Access Token lassen sich nur Inhalte im Status Published lesen. Erfahren Sie, was Veröffentlichen bedeutet.
  • Space Access Token: Behandelt technische Spezifikationen wie das Anfrageformat, das Sie benötigen, wenn Sie einen Space Access Token aus einem Programm heraus ausgeben oder mit diesem Schlüssel Inhalte lesen und schreiben.
  • API-Referenz: Behandelt technische Spezifikationen wie das Anfrageformat, das Sie benötigen, wenn Sie andere Token ausgeben oder Inhalte direkt aus einem Programm heraus bearbeiten.