Problembehandlung für den REST-API-Bereich

  • Freigeben Version: Xanadu
  • Aktualisiert 1. August 2024
  • 2 Minuten Lesedauer
  • Aktionen zur Fehlerbehebung können zur Behebung allgemeiner Probleme beim Einrichten oder Ausführen des REST-API-Bereichs beitragen.

    Tabelle : 1. Problembehandlung
    Problem Aktion
    Die REST-API ist mit dem Authentifizierungsbereich verknüpft. Zur Laufzeit findet jedoch auch bei Verwendung der Bearer-Token-Authentifizierung keine Überprüfung des Authentifizierungsbereichs statt.
    • Stellen Sie sicher, dass der Datensatz „sys_api_access_policy“ aktiv ist. Die Laufzeit ignoriert inaktive Datensätze.
    • Überprüfen Sie, ob die Eigenschaft com.glide.rest.api.auth.scope.check.enable auf „falsch“ festgelegt ist.
    • Überprüfen Sie, ob das OAuth-Token den Authentifizierungsbereich useraccount hat.
    Die REST API ist mit auth_scope1verknüpft, aber das Zugriffstoken mit auth_scope2 kann auch darauf zugreifen.
    • Überprüfen Sie, ob dieser Datensatz aktiv ist.
    • Suchen Sie nach diesem REST und prüfen Sie, ob andere Datensätze vorhanden sind, die dieselben APIs, aber unterschiedliche Anwendungsmethoden, Versionen oder Ressourcen aufweisen.
    Die REST-API ist mit dem Authentifizierungsbereich verknüpft, zur Laufzeit findet jedoch keine Authentifizierungsbereichsprüfung für basicAuth und mutualAuthstatt. Dies wird erwartet, da der REST-API-Authentifizierungsbereich nur für das OAuth-Zugriffstoken oder OIDC-Token gilt. BasicAuth-, Sitzungscookies- und zertifikatsbasierte Authentifizierung werden nicht angewendet.
    REST-API-Aufruf gibt bei Verwendung des OAuth-Zugriffstokens 403 zurück. Überprüfen Sie, ob die Fehlermeldung „Erforderlicher API-Zugriffsbereich fehlt“ angezeigt wird. Wenn gefunden wird, schlägt die Überprüfung des Authentifizierungsbereichs für diese REST API fehl
    Vordefinierter Anwenderaccount wurde gelöscht und kann nicht wiederhergestellt werden. Exportieren Sie useraccount als XML aus der anderen Instanz, und importieren Sie es, oder erstellen Sie ein useraccount, und ändern Sie die Systemeigenschaft glide.oauth.token.scope.useraccount für den neu erstellten Datensatz sys_id.

    Häufige Fragen

    Im Folgenden finden Sie einige häufig gestellte Fragen, wenn Sie den REST-API-Authentifizierungsbereich verwenden:

    Kann ein OAuth-Token mit mehreren Authentifizierungsbereichen verknüpft werden?
    Ja, eine oauth_entity kann mit mehreren Authentifizierungsbereichen verknüpft werden. Jedes von dieser oauth_entity ausgegebene OAuth-Token hat dieselben Authentifizierungsbereiche.
    Können verschiedene OAuth-Token mit unterschiedlichen Authentifizierungsbereichen auf dieselbe REST API zugreifen?
    Ja, für dieselbe REST API können verschiedene Authentifizierungsbereiche darauf zugreifen. Solange ein Authentifizierungsbereich übereinstimmt, gibt der Authentifizierungsbereich die Ergebnisse zurück.
    Kann ein OAuth-Zugriffstoken mit dem Authentifizierungsbereich „useraccount“ auf alle REST APIs zugreifen?
    Ja, der Anwenderaccount hat vollständigen Zugriff auf den Authentifizierungsbereich.
    Kann der OAuth-Bereich des OAuth-Zugriffstokens dynamisch geändert werden?
    Ja, die bereichsbezogene Authentifizierung ist nicht mit dem Zugriffstoken in der Tabelle „oauth_credential“ hartcodiert. Stattdessen wird der Authentifizierungsbereich während der Laufzeit von der verknüpften oauth_entity abgerufen.
    Kann das OAuth-Token nach der Aktualisierung dieselben Authentifizierungsbereiche beibehalten?
    Ja, der Authentifizierungsbereich ändert sich nach der Token-Aktualisierung nicht, es sei denn, oauth_admin ändert den mit oauth_entityverknüpften Authentifizierungsbereich.
    Der vordefinierte Datensatz für den Anwenderaccount-Authentifizierungsbereich wurde gelöscht. Kann ein neuer Authentifizierungsbereich mit dem Namen „useraccount erstellt werden?
    Das Erstellen eines neuen Authentifizierungsbereichs mit demselben Anwenderaccount funktioniert nicht. Zur Laufzeit wird für die Überprüfung des Authentifizierungsbereichs die sys_id anstelle des Namens verwendet. Ändern Sie die Systemeigenschaft glide.oauth.token.scope.useraccount für den neu erstellten Datensatz „ sys_id“.
    Wenn der Administrator den mit oauth_entityverknüpften Authentifizierungsbereich ändert, werden dann alle vorhandenen OAuth-Zugriffstoken geändert, die von dieser OAuth-Entität ausgestellt wurden?
    Ja, der Authentifizierungsbereich ist nicht direkt mit dem OAuth-Zugriffstoken verknüpft, sondern wird während der Laufzeit von „oauth_entity“ abgerufen.
    Können verschiedene OAuth-Zugriffstoken, die von derselben oauth_entity ausgegeben werden, unterschiedliche Authentifizierungsbereiche haben?
    Nein, der gesamte Zugriff auf das Token wird von derselben oauth_entity ausgegeben und hat immer dieselben Authentifizierungsumfänge.
    Kann ein Benutzer verschiedene Authentifizierungsbereiche für einen bestimmten Endpunkt definieren?
    Nein, es gibt eine eindeutige Einschränkungsprüfung für einen bestimmten REST-API-Endpunkt. Für denselben REST API-Endpunkt können jedoch mehrere übereinstimmende Authentifizierungsbereiche vorhanden sein.
    Wird die Authentifizierungsbereichsprüfung auch für BasicAuth verwendet?
    Nein, die Umfangsprüfung bezieht sich nur auf das OAuth-Zugriffstoken und das OIDC-Token. Sie wird nicht für basicAuth und mutualAuthangewendet.