2017-08-02 4 views
0

Je veux implémenter le mécanisme d'autorisation de mon application python en flacon. Je veux manipuler l'autorisation des groupes, utilisateurs et etc ... dans mon application.mise en place auth0-autorisation-extension-api

Après avoir lu ces pages sur la façon d'autorisation configuration par l'extension

1- https://auth0.com/docs/api-auth/grant/authorization-code

2- https://auth0.com/docs/quickstart/backend/python#add-api-authorization

J'ai ajouté ce décorateur qui figure dans le second lien ci-dessus (chose intéressante est que j'ai réalisé le 2ème décorateur de liens a les mêmes noms de décorateur avec l'application 00-Starter-Seed Donc le 2ème décorateur de liens fait-il l'autorisation et l'authentification en même temps?

def requires_auth(f): ... .. . Mais quand j'ai essayé de travailler ce décorateur, je reçois cette erreur

{ 
    "code": "Error decoding token headers.", 
    "description": "Invalid header. Use an RS256 signed JWT Access Token" 
} 

je doutais de peut-être que je comprends le concept d'autorisation dans la mise en œuvre Auht0 mal. Alors, ce que je comprends, il est

1 - vérification doit être effectuée pour déterminer si la requête entrante contient des informations d'autorisation valide (JWT)

2- obtenir access_token et l'utiliser dans décorateur

3 -appeler l'API pour manipuler les groupes, les utilisateurs, etc, ... (choses que je veux faire à travers API) OU l'utiliser comme décorateur de fonction pour faire usage de cette fonction seulement être appelé par admin

quel est le point que je suis ne pas voir ou comprendre mal?

Merci

Répondre

0

Je l'ai fait fonctionner. Les grandes lignes que j'ai suivi sont

  1. autorisation créé l'extension

  2. extension autorisation configurée API

  3. grand accès à auth0-authz (client non interactif)

  4. dans notre web app demande créé un autre jeton pour auth0-authz (client non-interactif) pour consommer API

  5. vérifié jeton sur urllib.urlopen ("https: //" + AUTH0_DOMAIN + "/.well-known/jwks.json")

  6. a ensuite fait un appel API avec succès nouveau jeton