API-Ressource mit Organisationstemplate schützen
Zusätzlich zu Schütze deine API, das Ressourcen sichert, indem es sicherstellt, dass ein g ültiges JWT vorhanden ist, können auch Organisationsrollen angewendet werden, um die Berechtigungen zu filtern. In diesem Artikel konzentrieren wir uns darauf, wie die Organisationsrolle die Berechtigungsdelegation und -validierung in deinem Authentifizierungsablauf beeinflusst.
Der zusätzliche organization_id
Parameter
Zusätzlich zur normalen Zugangstoken-Anfrage fügen wir im Diagramm einen zusätzlichen organization_id
Parameter hinzu. Dieser teilt Logto mit, die Berechtigungen auf die Rollen einer bestimmten Organisation einzugrenzen.
Client-Einrichtung
Wenn du das SDK von Logto verwendest, kannst du organization_id
als zweiten Parameter der getAccessToken
Methode hinzufügen.
const accessToken = await logto.getAccessToken('https://my-resource.com/api', 'org_1');
// Oder Ansprüche direkt abrufen
const accessTokenClaims = await logto.getAccessTokenClaims('https://my-resource.com/api', 'org_1');
console.log(accessTokenClaims.organization_id); // 'org_1'
console.log(accessTokenClaims.aud); // 'https://my-resource.com/api'
Dann werden nur die Berechtigungen, die von den Rollen dieser Organisation geerbt werden, im Zugangstoken enthalten sein, sowie ein zusätzlicher Anspruch organization_id
.
API-Server-Validierung
Zusätzlich zur normalen JWT-Zugangstoken-Validierung musst du eine zusätzliche Ebene hinzufügen, um zu überprüfen, ob organization_id
vorhanden und gültig ist.