Блог python на хабрахабре
Python / Авторизация по протоколам PAP и MSCHAPv2
Для начала несколько допущений.
Для начала нам нужно определить по какому протоколу пользователь инициирует аутентификацию. Делается это довольно просто:
- Будем базироваться на коде, представленном в моей предыдущей статье.
- Исходим из того, что аутентифицировать пользователя мы можем только по протоколу PAP или MSCHAPv2.
- В коде не будет блоков try — except в угоду читабельности (но в реальном проекте, самой собой, без этого никак не обойтись).
- Пароли хранятся в базе данных в открытом виде (в реальном проекте можно хранить в MD4).
Для начала нам нужно определить по какому протоколу пользователь инициирует аутентификацию. Делается это довольно просто:
def get_auth_type(self, pkt ):
challenge = pkt.get( 'MS-CHAP-Challenge' )
response = pkt.get( 'MS-CHAP2-Response' )
if challenge is not None and response is not None:
return AUTH_MSCHAPv2
else:
return AUTH_PAP
- 15 Янв 09:00
