auth_pubtkt Python dünya üçün mod_auth_pubtkt identifikasiyası həyata keçirir bir modul deyil.
Ticket yaradılması
Nessesary modulları İthalat:
& Nbsp; >>> olan M2Crypto idxal RSA
& Nbsp; >>> idxal auth_pubtkt
& Nbsp; >>> idxal auth_pubtkt.tests
& Nbsp; >>> idxal os.path
& Nbsp; >>> idxal zaman, datetime
Testlər paketi RSA Şəxsi düyməsindən Loading:
& Nbsp; >>> privkey_path = os.path.join (os.path.dirname (auth_pubtkt.tests .__ file__), "rsa_priv.pem)
& Nbsp; >>> privkey = RSA.load_key (privkey_path)
00:00 2011/01/01 Set başa vaxt
& Nbsp; >>> validuntil = int (time.mktime (datetime.datetime (2011, 1, 1) .timetuple ()))
Istifadəçi john "üçün bilet Yaratma:
& Nbsp; >>> bilet = auth_pubtkt.create_ticket (privkey, john, validuntil, ayələr = ['su'])
& Nbsp; >>> bilet
'uid=john;validuntil=1293814800;tokens=su;sig=YuM/RL8ub+XMb0ZTTlFYF6ehwRV8SnKx+TLj/syZmVx1ncR4QD58OMdRkmdmDCY9sdsoivcf+ACRCRX19nmEc5Ba+182FyRKC8bGL51GwPs+lMgaIaXxvhSvRbl/00sTWny+XEv1fEQDSc5tw3/ug6/YA9xt2wywUX1+hxfWQ5U='
Middleware
& Nbsp; >>> idxal urllib
& Nbsp; >>> pubkey_path = os.path.join (os.path.dirname (auth_pubtkt.tests .__ file__), "rsa_pub.pem)
& Nbsp; >>> pubkey = RSA.load_pub_key (pubkey_path)
& Nbsp; >>> def test_app (ekoloji, start_response):
& Nbsp; ... sorted (environ.keys ()) ilə düyməsi üçün:
& Nbsp; ... print '% s:% s'% (əsas, ekoloji [açar])
& Nbsp; >>> app = auth_pubtkt.AuthPubTKTMiddleware (test_app, pubkey)
& Nbsp; >>> ENV = {}
& Nbsp; >>> ENV ['Remote_Addr'] = '192.168.1.10 "
& Nbsp; >>> ENV ['Request_Method'] = 'GET "
& Nbsp; >>> ENV ['HTTP_COOKIE'] = 'auth_pubtkt = "% s"'% urllib.quote (bilet)
& Nbsp; >>> app (ENV, Lambda status başlamaq: None)
& Nbsp; AUTH_TYPE: cookie
& Nbsp; HTTP_COOKIE: auth_pubtkt="uid=john;validuntil=1293814800;tokens=su;sig=YuM/RL8ub+XMb0ZTTlFYF6ehwRV8SnKx+TLj/syZmVx1ncR4QD58OMdRkmdmDCY9sdsoivcf+ACRCRX19nmEc5Ba+182FyRKC8bGL51GwPs+lMgaIaXxvhSvRbl/00sTWny+XEv1fEQDSc5tw3/ug6/YA9xt2wywUX1+hxfWQ5U="
& Nbsp; Remote_Addr: 192.168.1.10
& Nbsp; REMOTE_USER: john
& Nbsp; REMOTE_USER_DATA:
& Nbsp; REMOTE_USER_TOKENS: su
& Nbsp; REMOTE_USER_TOKENS_LIST: ['su']
& Nbsp; Request_Method: GET
& Nbsp; auth_pubtkt.ticket_fields: {"ayələr": ['su'], 'validuntil: 1293814800, uid: "john"}
tələblər
- Python
Şərhlər tapılmadı