2008-09-23 15 views
7

द्वारा चलाए जा रहे एक WSGI स्क्रिप्ट के प्रमाणीकरण जानकारी पचाने मैं निर्देशapache2 पासिंग mod_wsgi

<VirtualHost *> 
    <Location /> 
     AuthType Digest 
     AuthName "global" 
     AuthDigestDomain/
     AuthUserFile /root/apache_users 
     <Limit GET> 
      Require valid-user 
     </Limit> 
    </Location> 
    WSGIScriptAlias//some/script.wsgi 
    WSGIDaemonProcess mywsgi user=someuser group=somegroup processes=2 threads=25 
    WSGIProcessGroup mywsgi 
    ServerName some.example.org 
</VirtualHost> 

मैं /some/script.wsgi में जानना चाहते हैं मिल गया है

def application(environ, start_response): 
    start_response('200 OK', [ 
     ('Content-Type', 'text/plain'), 
    ]) 
    return ['Hello'] 

क्या उपयोगकर्ता लॉग इन है

मैं यह कैसे कर सकता हूं? mod_wsgi documentation पर

def application(environ, start_response): 
    start_response('200 OK', [ 
     ('Content-Type', 'text/plain'), 
    ]) 
    return ['Hello %s' % environ['REMOTE_USER']] 

अधिक जानकारी:

उत्तर

14

WSGIPassAuthorization On जोड़ें:

<VirtualHost *> 
    <Location /> 
     AuthType Digest 
     AuthName "global" 
     AuthDigestDomain/
     AuthUserFile /root/apache_users 
     <Limit GET> 
      Require valid-user 
     </Limit> 
    </Location> 
    WSGIPassAuthorization On 
    WSGIScriptAlias//some/script.wsgi 
    WSGIDaemonProcess mywsgi user=someuser group=somegroup processes=2 threads=25 
    WSGIProcessGroup mywsgi 
    ServerName some.example.org 
</VirtualHost> 

तो बस environ['REMOTE_USER'] पढ़ें।

+0

अधिक, बहुत बाध्य। –

2

अपाचे/mod_wsgi और उपयोग, प्रमाणीकरण और प्राधिकरण तंत्र के बारे में अतिरिक्त जानकारी में पाया जा सकता:

http://code.google.com/p/modwsgi/wiki/AccessControlMechanisms

जानकारी डिफ़ॉल्ट रूप से पारित नहीं किया जाता है ऐसा करने से आवेदन करने के लिए पासवर्ड की जानकारी लीक कर सकता है जिसकी वजह से हो सकता है इसे प्राप्त नहीं करना चाहिए।