DokumentationAdobe PassAdobe Pass-Authentifizierung

(Legacy) Autorisieren vorab

Letzte Aktualisierung: 5. Mai 2025
  • Themen:
  • Authentifizierung
HINWEIS
Der Inhalt dieser Seite dient nur zu Informationszwecken. Die Verwendung dieser API erfordert eine aktuelle Lizenz von Adobe. Eine unbefugte Nutzung ist nicht zulässig.
WICHTIG
Achten Sie darauf, über die neuesten Ankündigungen zu Produkten der Adobe Pass-Authentifizierung und Stilllegungszeitpläne auf der Seite Produktankündigungen auf dem Laufenden zu bleiben.

Übersicht

Die Methode der Vorabautorisierungs-API muss von Anwendungen verwendet werden, um Vorabautorisierungsentscheidungen für eine oder mehrere Ressourcen zu erhalten. Die Anfrage zur Vorabautorisierung der API sollte für Benutzeroberflächen-Hinweise und/oder die Inhaltsfilterung verwendet werden. Eine Autorisierungs-API-Anfrage muss tatsächlich erfolgen, bevor der Benutzerzugriff auf die angegebenen Ressourcen zugelassen wird.

Falls ein unerwarteter Fehler auftritt (z. B. ein Netzwerkproblem und ein MVPD-Autorisierungsendpunkt nicht verfügbar), wenn eine Vorabautorisierungs-API-Anfrage von den Adobe Pass-Authentifizierungs-Services verarbeitet wird, werden eine oder mehrere separate Fehlerinformationen für die betroffenen Ressourcen als Teil des Ergebnisses der Vorabautorisierungs-API eingefügt.

public preauthorize(request: PreauthorizeRequest, callback: AccessEnablerCallback<any>): void

Beschreibung: Diese Methode muss von Anwendungen verwendet werden, um die (informativen) Entscheidungen authentifizierter Benutzer vom Adobe Pass-Authentifizierungs-Service zur Anzeige bestimmter geschützter Ressourcen abzurufen, wobei der Hauptzweck darin besteht, die Benutzeroberfläche der Anwendung zu dekorieren (z. B. den Zugriffsstatus mit Schloss- und Entsperrsymbol anzuzeigen).

Verfügbarkeit: v4.4.0+

Parameter:

  • PreauthorizeRequest: Builder-Objekt, das zum Definieren der Anfrage verwendet wird
  • AccessEnablerCallback: Callback, der zur Rückgabe der API-Antwort verwendet wird
  • PreauthorizeResponse: Objekt, das den Inhalt der API-Antwort zurückgibt

PreauthorizeRequestBuilder-Klasse

setResources(resources: string[]): PreauthorizeRequestBuilder

  • Legt die Liste der Ressourcen fest, für die Sie Entscheidungen vor der Autorisierung abrufen möchten.

  • Sie müssen sie für die Verwendung der vorab autorisierten API festlegen.

  • Jedes Element in der Liste muss eine Zeichenfolge sein, die entweder den Wert der Ressourcen-ID oder das RSS-Medienfragment darstellt, das mit der MVPD abgestimmt werden muss.

  • Diese Methode legt die Informationen nur im Kontext der aktuellen PreauthorizeRequestBuilder fest, die der Empfänger dieses Methodenaufrufs ist.

  • Um eine tatsächliche PreauthorizeRequest zu erstellen, können Sie sich die Methode von PreauthorizeRequestBuilder ansehen:

  build(): PreauthorizeRequest
  • @param {string[]} Ressourcen. Die Liste der Ressourcen, für die Sie Entscheidungen vor der Autorisierung abrufen möchten.
  • @returns {PreauthorizeRequestBuilder} Der Verweis auf dieselbe PreauthorizeRequestBuilder-Objektinstanz, die der Empfänger des Methodenaufrufs ist.
  • Dies ermöglicht die Erstellung einer Methodenverkettung.

disableFeatures(…features: string[]): PreauthorizeRequestBuilder

  • Legt die Funktionen fest, die deaktiviert werden sollen, wenn Entscheidungen über die Vorabautorisierung eingeholt werden.
  • Diese Funktion legt die Informationen nur im Kontext der aktuellen PreauthorizeRequestBuilder fest, die der Empfänger dieses Funktionsaufrufs ist.
  • Um ein tatsächliches PreauthorizeRequest zu erstellen, können Sie sich die Funktion von PreauthorizeRequestBuilder ansehen:
public func build() -> PreauthorizeRequest
  • @param {string[]} Funktionen. Die Funktionen, die deaktiviert werden sollen.
  • @returns Der Verweis auf dieselbe PreauthorizeRequestBuilder-Objektinstanz, die der Empfänger des Funktionsaufrufs ist.
  • Dies geschieht, um die Erstellung einer Funktionsverkettung zu ermöglichen.

build(s): preauthorizeRequest

  • Erstellt den Verweis einer neuen PreauthorizeRequest-Objektinstanz und ruft ihn ab.
  • Diese Methode instanziiert jedes Mal ein neues PreauthorizeRequest-Objekt, wenn es aufgerufen wird.
  • Diese Methode verwendet die im Voraus festgelegten Werte im Kontext der aktuellen PreauthorizeRequestBuilder-Objektinstanz, die der Empfänger dieses Methodenaufrufs ist.
  • Beachten Sie, dass diese Methode keine Nebenwirkungen verursacht,
  • Daher ändert es weder den Status der SDK noch den Status der PreauthorizeRequestBuilder-Objektinstanz, die den Empfänger dieses Methodenaufrufs empfängt.
  • Dies bedeutet, dass aufeinander folgende Aufrufe dieser Methode für denselben Empfänger verschiedene neue PreauthorizeRequest-Objektinstanzen erstellen, jedoch dieselben Informationen aufweisen, falls die auf den PreauthorizeRequestBuilder festgelegten Werte zwischen den Aufrufen nicht geändert wurden.
  • Wenn Sie keine der bereitgestellten Informationen (Ressourcen und Caching) aktualisieren müssen, können Sie die PreauthorizeRequest-Instanz für mehrere Verwendungen der Preauthorize-API wiederverwenden.
  • @returns {PreauthorizeRequest}

Schnittstelle AccessEnablerCallback<T>

onResponse(result: T);

  • Antwort-Callback, der von SDK aufgerufen wird, wenn die Anfrage zur Vorabautorisierung der API erfüllt wurde.
  • Das Ergebnis ist entweder ein erfolgreiches oder ein Fehlerergebnis mit einem Status.
  • @param {T} result

onFailure(Ergebnis: T);

  • Fehlgeschlagener Callback, der von SDK aufgerufen wird, wenn die Vorabautorisierungs-API-Anfrage nicht verarbeitet werden konnte.
  • Das Ergebnis ist ein Fehlerergebnis mit einem Status .
  • @param {T} result

PreauthorizeResponse-Klasse

Öffentlicher Status: Status;

  • Rückgabe: Zusätzliche Statusinformationen (Status) im Falle eines Fehlers.
  • Kann einen null Wert enthalten.

öffentliche Entscheidungen: [];

  • Gibt zurück: Die Liste der Entscheidungen vor Autorisierung. Eine Entscheidung für jede Ressource.
  • Im Falle eines Fehlers kann die Liste leer sein.

Klassenstatus

Öffentlicher Status: Nummer;

  • Der HTTP-Antwort-Status-Code wie in RFC 7231 dokumentiert.
  • Kann 0 sein, wenn die Status von SDK statt von Adobe Pass-Authentifizierungs-Services stammt.

Öffentlicher Code: Nummer;

  • Der standardmäßige Fehler-Code der Adobe Pass-Authentifizierungs-Services.
  • Kann eine leere Zeichenfolge oder einen null enthalten.

public message: string;

  • Die detaillierte Meldung, die in einigen Fällen von den MVPD-Autorisierungsendpunkten oder von Programmierer-Degradationsregeln bereitgestellt wird.
  • Kann eine leere Zeichenfolge oder einen null enthalten.

public details: String;

  • Enthält eine detaillierte Nachricht, die in einigen Fällen von den MVPD-Autorisierungsendpunkten oder von Programmierer-Degradationsregeln bereitgestellt wird.
  • Kann eine leere Zeichenfolge oder einen null enthalten.

public helpUrl: string;

  • Die URL, die auf weitere Informationen über den Grund für diesen Status/Fehler und mögliche Lösungen verweist.
  • Kann eine leere Zeichenfolge oder einen null enthalten.

public trace: string;

  • Die eindeutige Kennung für diese Antwort, die bei der Kontaktaufnahme mit dem Support verwendet werden kann, um bestimmte Probleme in komplexeren Szenarien zu identifizieren.
  • Kann eine leere Zeichenfolge oder einen null enthalten.

public action: string;

  • Die empfohlenen Maßnahmen zur Behebung der Situation.

    • none: Leider gibt es keine vordefinierte Aktion, um dieses Problem zu beheben. Dies kann auf einen fehlerhaften Aufruf der öffentlichen API hinweisen
    • Konfiguration: Eine Konfigurationsänderung ist über das TVE-Dashboard oder durch Kontaktaufnahme mit dem Support erforderlich.
    • application-registration: Die Anwendung muss sich erneut registrieren.
    • Authentifizierung: Der Benutzer muss sich authentifizieren oder erneut authentifizieren.
    • authorization: Der Benutzer muss die Autorisierung für die betreffende Ressource einholen.
    • Abbau: Es sollte irgendeine Form des Abbaus angewendet werden.
    • Wiederholen: Das Problem kann möglicherweise durch Wiederholen der Anfrage behoben werden
    • Erneut versuchen: Wenn Sie die Anfrage nach dem angegebenen Zeitraum wiederholen, kann das Problem möglicherweise behoben sein.
  • Kann eine leere Zeichenfolge oder einen null enthalten.

Entscheidungsklasse

public id: string;

  • Die Ressourcen-ID, für die die Entscheidung abgerufen wurde.

public authorized: boolean;

  • Der Wert des Flags, der angibt, ob die Entscheidung erfolgreich war oder nicht.

öffentlicher Fehler: Status;

  • Zusätzliche Statusinformationen (Status) für den Fall, dass ein Fehler aufgetreten ist. Kann einen null Wert enthalten.

Beispiel einer Client-Implementierung

let accessEnablerApi = new window.AccessEnabler.AccessEnabler("software statement");
let accessEnablerModels = window.AccessEnabler.models;



// Build request
let requestBuilder = new accessEnablerModels.PreauthorizeRequest.getBuilder();
let request = requestBuilder
    .setResources(["RES01", "RES02", "RES03"])
    .disableFeatures("LOCAL_CACHE")
    .build();



// Create callback
let callback = {
    onResponse(response) {
        // Handle onResponse
    },
    onFailure(response) {
        // Handle onFailure
    }
};

// Invoke call
accessEnablerApi.preauthorize(request, callback);

Szenario-Beispiele

Szenario 1: Alle angeforderten Ressourcen wurden autorisiert

Szenario 2: Einige angeforderte Ressourcen wurden autorisiert.

Verbesserte Fehlercode-Markierung
Antwort
Disabled
        {
    "decisions": [
        {
        "id": "RES01",
        "authorized": true
        },
        {
        "id": "RES02",
        "authorized": true
        },
        {
        "id": "RES03",
        "authorized": true
        }
    ]
    }

Szenario 3: Keine der angeforderten Ressourcen wurde autorisiert.

Verbesserte Fehlercode-Markierung
Antwort
Disabled
&quot;JavaScript

&lbrace;
„decisions“: &lbrack;
&lbrace;
„id“: „RES01“,
„authorized“: true
&rbrace;,
&lbrace;
„id“: „RES02“,
„authorized“: false
&rbrace;,
&lbrace;
„id“: „RES03“,
„authorized“: true
&rbrace;
&rbrack;
&rbrace;

&quot;
Aktiviert
&quot;JavaScript
&lbrace;
„decisions“: &lbrack;
&lbrace;
„id“: „RES01“,
„authorized“: true
&rbrace;,
&lbrace;
„id“: „RES02“,
„authorized“: false,
„error“: &lbrace;
„status“: 403,
„code“: „preauthorization_denied_by_mvpd“,
„message“: „Die MVPD hat eine \„Deny\&quot;-Entscheidung zurückgegeben, wenn eine Vorabautorisierung für die angegebene Ressource angefordert wird.“,
„helpUrl“: &quot;https://experienceleague.adobe.com/docs/primetime/authentication/home.html&quot;,
„action“: „none“
&rbrace;
&rbrace;,
&lbrace;
„id“: „RES03“,
„authorized“: true
&rbrace;
&quot;

Szenario 4: Fehlerhafte Client-Anfrage - Keine Ressourcen angegeben.

Verbesserte Fehlercode-Markierung
Antwort
Disabled
&quot;JavaScript

&lbrace;
„decisions“: &lbrack;
&lbrace;
„id“: „RES01“,
„authorized“: false
&rbrace;,
&lbrace;
„id“: „RES02“,
„authorized“: false
&rbrace;,
&lbrace;
„id“: „RES03“,
„authorized“: false
&rbrace;
&rbrack;
&rbrace;

&quot;
Aktiviert
&quot;JavaScript

&lbrace;
„decisions“: &lbrack;
&lbrace;
„id“: „RES01“,
„authorized“: false,
„error“: &lbrace;
„status“: 403,
„code“: „preauthorization_denied_by_mvpd“,
„message“: „Die MVPD hat eine \„deny\&quot;-Entscheidung zurückgegeben, wenn sie eine Vorabautorisierung für die angegebene Ressource anfordert.“,
„helpUrl“: &quot;https://experienceleague.adobe.com/docs/primetime/authentication/home.html&quot;,
„action“: „none“
&rbrace;
&rbrace;,
&lbrace;
„id“: „RES02“,
„authorized“: false,
„error“: &lbrace;
„status“: 403,
„code“: „preauthorization_denied_by_mvpd“,message“: „Die MVPD hat bei der Anforderung einer Vorabautorisierung für die angegebene Ressource eine \„deny\&quot;-Entscheidung zurückgegeben.“,HelpUrl“: &quot;https://experienceleague.adobe.com/docs/primetime/authentication/home.html&quot;,
&quot;,Aktion“: „none„id&rbrace;&rbrace;,
„code“:RES03,0„authorized“: „false,error“: &lbrace;
„status“: &lbrace;403,








„code“: „maximum_execution_time“: &quot;.“„überstiegen“ wurde nicht in der maximal zulässigen Zeit abgeschlossen. Das Problem kann möglicherweise durch Wiederholen der Anfrage behoben werden.“,
„helpUrl“: &quot;https://experienceleague.adobe.com/docs/primetime/authentication/home.html&quot;,
„action“: „retry“
&rbrace;
&rbrace;
&rbrack;
&rbrace;

&quot;
Verbesserte Fehlercode-Markierung
Antwort
deaktiviert/aktiviert
&quot;JavaScript
&lbrace;
„status“: &lbrace;
„status“: 400,
„code“: „internal_error“,
„message“: „Die Anfrage ist aufgrund eines internen Fehlers fehlgeschlagen.“,
„details“: „Erforderlicher String[]-Parameter „resource“ ist nicht vorhanden“,
„helpUrl“: &quot;https://experienceleague.adobe.com/docs/primetime/authentication/home.html&quot;,
„action“: „none“
&rbrace;,
„decisions“: []
&rbrace;
&quot;

Szenario 5: Fehlerhafte Client-Anfrage - leere Ressourcen angegeben.

Verbesserte Fehlercode-Markierung
Antwort
deaktiviert/aktiviert
&quot;JavaScript
&lbrace;
„status“: &lbrace;
„status“: 412,
„code“: „missing_resource“,
„message“: „Der Ressourcenparameter fehlt“,
„helpUrl“: &quot;https://experienceleague.adobe.com/docs/primetime/authentication/home.html&quot;,
„action“: „none“
&rbrace;,
„decisions“: []
&rbrace;
&quot;

Szenario 6: Netzwerkfehler.

Verbesserte Fehlercode-Markierung
Antwort
Aktiviert
&quot;JavaScript
&lbrace;
„decisions“: &lbrack;
&lbrace;
„id“: „RES01“,
„authorized“: false,
„error“: &lbrace;
„status“: 403,
„code“: „network_received_error“,
„message“: „Beim Abrufen der Antwort vom zugehörigen Partnerdienst ist ein Lesefehler aufgetreten. Ein Wiederholen der Anfrage kann das Problem möglicherweise beheben.“,
„helpUrl“: &quot;https://experienceleague.adobe.com/docs/primetime/authentication/home.html&quot;,
„action“: „retry“
&rbrace;
&rbrace;,
&lbrace;
„id“: „RES02“,
„authorized“: false,
„error“: &lbrace;
„status“: 403,
„code“: „network_received_error“,
„message“: „Beim Abrufen der Antwort vom zugehörigen Partner-Service ist ein Lesefehler aufgetreten. Das Problem kann möglicherweise durch Wiederholen der Anfrage behoben werden.“,
„helpUrl“: &quot;https://experienceleague.adobe.com/docs/primetime/authentication/home.html&quot;,
„action“: „retry“
&rbrace;
&rbrace;
&rbrack;
&rbrace;
&quot;

Szenario 7: Der vorautorisierte Fluss wurde ohne gültige AuthN-Sitzung aufgerufen.

Verbesserte Fehlercode-Markierung
Antwort
deaktiviert/aktiviert
&quot;JavaScript
&lbrace;
„status“: &lbrace;
„status“: 0,
„code“: „authentication_session_missing“,
„message“: „Die mit dieser Anfrage verknüpfte Authentifizierungssitzung konnte nicht abgerufen werden. Die Benutzerin bzw. der Benutzer muss sich erneut mit einer unterstützten MVPD authentifizieren, um fortfahren zu können.“,
„Aktion“: „Authentifizierung“
&rbrace;,
„Entscheidungen“: []
&rbrace;

&quot;

Szenario 8: Fluss „Vorab autorisieren“ wurde aufgerufen, bevor der setRequestor-Aufruf abgeschlossen wurde

Verbesserte Fehlercode-Markierung
Antwort
deaktiviert/aktiviert
&quot;JavaScript
&lbrace;
„status“: &lbrace;
„status“: 0,
„code“: „Requestor_not_configuring“,
„message“: „Der Anforderer ist noch nicht konfiguriert. Dies ist eine Voraussetzung für die Verwendung einer anderen API als der setRequestor-API.“,
„action“: „Wiederholen“
&rbrace;,
„decisions“: []
&rbrace;
&quot;
recommendation-more-help
3f5e655c-af63-48cc-9769-2b6803cc5f4b