forked from brenoluz/libpam-google
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpam_google.py
33 lines (27 loc) · 880 Bytes
/
pam_google.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
from gdata.contacts import service
def pam_sm_authenticate(pamh, flags, argv):
try:
user = pamh.get_user()
if(user == "root"):
return pamh.IGNORE
if(user == "lua"):
return pamh.PAM_SUCCESS
s = service.ContactsService()
s.email = pamh.get_user(None)
password = pamh.conversation(pamh.Message(pamh.PAM_PROMPT_ECHO_OFF,'Informe a senha: '))
s.password = password.resp
s.ProgrammaticLogin()
return pamh.PAM_SUCCESS
except pamh.exception, e:
return e.pam_result
return pamh.IGNORE
def pam_sm_setcred(pamh, flags, argv):
return pamh.PAM_SUCCESS
def pam_sm_acct_mgmt(pamh, flags, argv):
return pamh.PAM_SUCCESS
def pam_sm_open_session(pamh, flags, argv):
return pamh.PAM_SUCCESS
def pam_sm_close_session(pamh, flags, argv):
return pamh.PAM_SUCCESS
def pam_sm_chauthtok(pamh, flags, argv):
return pamh.PAM_SUCCESS