D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
proc
/
3
/
root
/
opt
/
imh-python
/
lib
/
python3.9
/
site-packages
/
pyroute2
/
cli
/
auth
/
Filename :
auth_radius.py
back
Copy
import os import pyrad.packet from pyrad.client import Client from pyrad.dictionary import Dictionary class RadiusAuthManager(object): def __init__(self, headers): user = headers['X-Auth-User'] password = headers['X-Auth-Password'] client = Client( server=os.environ.get('RADIUS_SERVER'), secret=os.environ.get('RADIUS_SECRET').encode('ascii'), dict=Dictionary('dictionary'), ) req = client.CreateAuthPacket( code=pyrad.packet.AccessRequest, User_Name=user ) req['User-Password'] = req.PwCrypt(password) reply = client.SendPacket(req) self.auth = reply.code def check(self, obj, tag): return self.auth == pyrad.packet.AccessAccept