J'ai une application Bottle sur heroku, et j'ai besoin de filtrer les adresses IP entrantes. Je ne sais pas trop comment faire ça.Filtrage IP en bouteille
This answer suggère d'utiliser un wrapper, mais c'est pour les routes privées - ne filtrant pas les demandes entrantes. L'emballage est:
def private_only(route):
def wrapper(*args, **kwargs):
if IPy.IP(bottle.request.remote_addr).iptype() == 'PRIVATE':
return route(*args, **kwargs)
else:
return "Not allowed!"
return wrapper
Est-ce que changer l'emballage à:
def private_only(route):
def wrapper(*args, **kwargs):
if IPy.IP(bottle.request.remote_addr).iptype() in ALLOWED_IPS:
return route(*args, **kwargs)
else:
return "Not allowed!"
return wrapper
et itinéraires de décoration avec:
@route('/my/internal/route')
@private_only
def my_view():
return some_data()
travail?