Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
python3-dmapi / usr / lib / python3.6 / site-packages / dmapi / api / __pycache__ / auth.cpython-36.pyc
Size: Mime:
3

·‰EcI
ã@s®dZddlmZddlmZddlmZddlZddl	Zddl
ZddlmZddl
mZddlmZejjZejeƒZd	d
„Zdd„ZGd
d„dejƒZGdd„dejƒZdS)z
Common Auth Middleware.

é)Úlog)Úversionutils)Ú	jsonutilsN)Úcontext)Ú_)ÚwsgicsJ‡fdd„|dd…Dƒ}ˆj|dƒ}|jƒx|D]}||ƒ}q6W|S)Ncsg|]}ˆj|ƒ‘qS©)Z
get_filter)Ú.0Ún)Úloaderrú/usr/lib/python3.6/auth.pyú
<listcomp>sz"_load_pipeline.<locals>.<listcomp>ééÿÿÿÿr)Zget_appÚreverse)rZpipelineÚfiltersZappÚfilterr)rrÚ_load_pipelines
rcKst||tjjjƒƒS)z8A paste pipeline replica that keys off of auth_strategy.)rÚCONFÚapiZ
auth_strategyÚsplit)rZglobal_confZ
local_confrrrÚpipeline_factory_v2"srcs8eZdZdZ‡fdd„Zejjej	ddd„ƒZ
‡ZS)Ú
InjectContextz&Add a 'dmapi.context' to WSGI environ.cs||_tt|ƒj||ŽdS)N)rÚsuperrÚ__init__)ÚselfrÚargsÚkwargs)Ú	__class__rrr*szInjectContext.__init__)ÚRequestClasscCs|j|jd<|jS)Nz
dmapi.context)rÚenvironÚapplication)rÚreqrrrÚ__call__.szInjectContext.__call__)Ú__name__Ú
__module__Ú__qualname__Ú__doc__rÚwebobÚdecÚwsgifyrÚRequestr#Ú
__classcell__rr)rrr'src@s(eZdZdZejjejddd„ƒZ	dS)ÚDmapiKeystoneContextz-Make a request context from keystone headers.)rcCsÀ|j}tjjr|jjd|ƒ}d}|jjdƒdk	rpy|jjdƒ}tj|ƒ}Wn$tk
rnt	j
jtdƒƒ‚YnX|j
jdƒ}tjj|j
|||d}|jdkr°tjdƒt	j
jƒS||j
d<|jS)NzX-Forwarded-ForZX_SERVICE_CATALOGzInvalid service catalog json.zkeystone.token_auth)Úuser_auth_pluginÚremote_addressÚservice_catalogz-Neither X_USER_ID nor X_USER found in requestz
dmapi.context)Zremote_addrrrZuse_forwarded_forZheadersÚgetrÚloadsÚ
ValueErrorr(ÚexcZHTTPInternalServerErrorrr rZRequestContextZfrom_environZuser_idÚLOGÚdebugZHTTPUnauthorizedr!)rr"r/r0Zcatalog_headerr.Zctxrrrr#7s,



zDmapiKeystoneContext.__call__N)
r$r%r&r'r(r)r*rr+r#rrrrr-4sr-)r'Zoslo_logrZloggingrZoslo_serializationrZ	webob.decr(Z	webob.excZ
dmapi.confZdmapirZ
dmapi.i18nrrZconfrZ	getLoggerr$r5rrZ
Middlewarerr-rrrrÚ<module>s