Re: How to make REMOTE_USER variable private across WSGI middlewares?

Etienne Robillard <tkadm30-zJpx2rpV7r/[email protected]> Thu, 10 Aug 2017 06:25:00 -0400
Newsgroups gmane.comp.python.web
Message-ID <[email protected]>
SGksCgpBIGxpdHRsZSB1cGRhdGUgb24gdGhpcyBpc3N1ZS4gSSBzd2l0Y2hlZCB0byB3ZXJremV1
Zy9nZXZlbnQgZm9yIHN0b3JpbmcgCnRoZSBodHRwIHJlcXVlc3QgaW4gYSB0aHJlYWQtbG9jYWwg
b2JqZWN0LiBJIGFsc28gdXNlIGEgY29udGV4dG1hbmFnZXIgCnRvIHNldCB0aGUgY3VycmVudCBy
ZXF1ZXN0IGZvciBhIHRocmVhZC4gSG93ZXZlciwgc2luY2UgdGhlIHZhbHVlIG9mIApSRU1PVEVf
VVNFUiBpcyBzZXQgZnJvbSBhIFdTR0kgbWlkZGxld2FyZSwgaXQgZG9lc24ndCBwZXJzaXN0IGlu
dG8gbXkgCnRocmVhZC1sb2NhbCByZXF1ZXN0IG9iamVjdC4KCkhlcmUncyBteSBjb2RlOgoKQGNv
bnRleHRtYW5hZ2VyCmRlZiBzZXNzaW9ubWFuYWdlcihlbnZpcm9uKToKICAgICBfcmVxdWVzdHMu
cmVxdWVzdCA9IFJlcXVlc3RDbGFzcyhlbnZpcm9uKQogICAgIHlpZWxkCiAgICAgX3JlcXVlc3Rz
LnJlcXVlc3QgPSBOb25lCgpkZWYgZ2V0X2N1cnJlbnRfcmVxdWVzdCgpOgogICAgIHRyeToKICAg
ICAgICAgcmV0dXJuIF9yZXF1ZXN0cy5yZXF1ZXN0CiAgICAgZXhjZXB0IEF0dHJpYnV0ZUVycm9y
OgogICAgICAgICByYWlzZSBUeXBlRXJyb3IoIk5vIHJlcXVlc3Qgb2JqZWN0IGZvciB0aGlzIHRo
cmVhZCIpCgoKcmVxdWVzdCA9IExvY2FsUHJveHkobGFtYmRhOiBnZXRfY3VycmVudF9yZXF1ZXN0
KCkpCgpbLi4uXQoKZGVmIGFwcGxpY2F0aW9uKHNlbGYsIGVudmlyb24sIHN0YXJ0X3Jlc3BvbnNl
KToKICAgICAgICAgc2VsZi5fc2Vzc2lvbi5lbnZpcm9uLnVwZGF0ZShlbnZpcm9uKQogICAgICAg
ICB3aXRoIHNlc3Npb25tYW5hZ2VyKHNlbGYuX3Nlc3Npb24uZW52aXJvbik6CiAgICAgICAgICAg
ICByZXNwb25zZSA9IHNlbGYuZ2V0X3Jlc3BvbnNlKHJlcXVlc3Q9cmVxdWVzdCkKICAgICAgICAg
dHJ5OgogICAgICAgICAgICAgcmV0dXJuIHJlc3BvbnNlKHNlbGYuX3Nlc3Npb24uZW52aXJvbiwg
c3RhcnRfcmVzcG9uc2UpCiAgICAgICAgIGZpbmFsbHk6CiAgICAgICAgICAgICBfcmVxdWVzdHMu
cmVxdWVzdCA9IE5vbmUKICAgICAgICAgICAgICNzZWxmLl9zZXNzaW9uLmVudmlyb24uY2xlYXIo
KQoKCkFueSBzdWdnZXN0aW9ucyBob3cgdG8gaW1wcm92ZSB0aGlzIGNvZGUgdG8gYWxsb3cgdGhl
IHZhbHVlIG9mIApSRU1PVEVfVVNFUiB0byBwZXJzaXN0IGlmIGFuZCBvbmx5IGlmIHRoZSB1c2Vy
IGhhcyBiZWVuIGF1dGhlbnRpY2F0ZWQgPwoKVGhhbmsgeW91IGluIGFkdmFuY2UsCgpFdGllbm5l
CgoKTGUgMjAxNi0xMC0xMiDDoCAwNTo0MiwgRXRpZW5uZSBSb2JpbGxhcmQgYSDDqWNyaXQgOgo+
IEkgYmVsaWV2ZSB0aGUgT0F1dGgyIG1pZGRsZXdhcmUgYW5kIGNsaWVudCBpcyBmdW5jdGlvbmlu
ZyBjb3JyZWN0bHkgCj4gYW5kIGlzIHNldHRpbmcgdGhlIFJFTU9URV9VU0VSIHZhbHVlIGFzIGV4
cGVjdGVkLiBCdXQgSSBndWVzcyB0aGUgCj4gcHJvYmxlbSBpcyBiZWNhdXNlIEkgcmVjcmVhdGUg
YSBuZXcgV2ViT2IgcmVxdWVzdCBvYmplY3QgYmVmb3JlIAo+IHJldHVybmluZyBhIFdTR0kgcmVz
cG9uc2UuIEFsc28sIEkgbmVlZCB0byB1cGRhdGUgdGhlIFdTR0kgZW52aXJvbm1lbnQgCj4gZm9y
IGVhY2ggcmVxdWVzdCBpbiBvcmRlciB0byBwcmVzZXJ2ZSB0aGUgdmFsdWUgb2YgUkVNT1RFX1VT
RVIuIAo+IEhvd2V2ZXIsIGkgZG9uJ3Qga25vdyBpZiBpdCdzIGxvZ2ljYWwgdG8gcmVjcmVhdGUg
YSBXU0dJIHJlcXVlc3QgZXZlcnkgCj4gdGltZS4gUGVyaGFwcyB0aGUgc29sdXRpb24gd291bGQg
YmUgdG8gdXNlIGEgZ2xvYmFsIHJlcXVlc3Qgb2JqZWN0Li4uCj4KCi0tIApFdGllbm5lIFJvYmls
bGFyZAp0a2FkbTMwQHlhbmRleC5jb20KaHR0cDovL3d3dy5pc290b3Blc29mdHdhcmUuY2EvCgpf
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpXZWItU0lHIG1h
aWxpbmcgbGlzdApXZWItU0lHQHB5dGhvbi5vcmcKV2ViIFNJRzogaHR0cDovL3d3dy5weXRob24u
b3JnL3NpZ3Mvd2ViLXNpZwpVbnN1YnNjcmliZTogaHR0cHM6Ly9tYWlsLnB5dGhvbi5vcmcvbWFp
bG1hbi9vcHRpb25zL3dlYi1zaWcvZ2Nwdy13ZWItc2lnJTQwbS5nbWFuZS5vcmcK