pyramid_ipauth est une politique d'authentification pour Pyramide qui établit l'identité et les directeurs efficaces basées sur l'adresse IP distante de la demande.
Aperçu
Pour effectuer l'authentification par adresse IP, créer un IPAuthenticationPolicy et spécifier la cible IP gamme, ID utilisateur et directeurs efficaces. Puis définir comme la politique d'authentification dans votre configurateur:
authn_policy = IPAuthenticationPolicy ("127,0. *. *", "MyUser", ["locaux"])
config.set_authentication_policy (authn_policy)
Cela entraînera toutes les demandes provenant d'adresses IP dans le 127,0. *. * Plage à authentifié comme "myuser" utilisateur et avoir les principales "locaux" efficaces.
Il est également possible de spécifier les options de configuration dans votre fichier de déploiement:
[Application: pyramidapp]
utilisation = oeuf: mypyramidapp
ipauth.ipaddrs = 127.0.0. * 127.0.1. *
ipauth.principals = habitants
Vous pouvez ensuite inclure simplement le paquet pyramid_ipauth dans votre configurateur:
config.include ("pyramid_ipauth")
Il permet de détecter les paramètres ipauth et de construire et de la politique appopriate.
Notez que ce paquet ne supporte que la comparaison avec une seule série de addresss IP. Si vous avez besoin d'assigner différentes informations d'identification à différents ensembles d'adresses IP, vous pouvez utiliser le paquet de pyramid_multiauth en conjonction avec pyramid_ipauth:
& Nbsp; http: //github.com/mozilla-services/pyramid_multiauth
Adresses IP Spécification
Les adresses IP peuvent être spécifiées dans une variété de formes, y compris:
- «tous»: les adresses IPv6 tout IPv4 possible et
- "Local": toutes les adresses locales de la machine
- Une adresse IP unique »A.B.C.D"
- Une spécification "A.B.C.D / N" adresse réseau
- "ABC *" un glob la comparaison avec tous les numéros possibles
- "ABCD-E" un glob la comparaison avec une plage de numéros
- Une chaîne whitespace- ou séparés par des virgules de tout de ce qui précède
- Un netaddr IPAddress, IPRange, IPGlob, IPNetork d'objet IPSet
- Une liste, tuple ou itérable de tout de ce qui précède
Les procurations
Ce module ne respecte pas l'en-tête X-Forwarded-For par défaut, car il peut être facilement usurpée par les clients malveillants. Si votre serveur est derrière un proxy de confiance qui définit l'en-tête X-Forwarded-For, vous devez déclarer explicitement l'ensemble des procurations de confiance comme ceci:
IPAuthenticationPolicy ("127,0. *. *",
& Nbsp; directeurs = ["locales"],
& Nbsp; procurations = "127.0.0.1")
L'ensemble des adresses proxy de confiance peut être spécifié en utilisant la même syntaxe que l'ensemble des adresses IP pour authentifier
Ce qui est nouveau dans cette version:.
- Mise à jour licence MPL 2.0
Exigences :
- Python
Commentaires non trouvées