oauth: Add TLS support for oauth_validator tests

The oauth_validator tests don't currently support HTTPS, which makes
testing PGOAUTHCAFILE difficult. Add a localhost certificate to
src/test/ssl and make use of it in oauth_server.py.

In passing, explain the hardcoded use of IPv4 in our issuer identifier,
after intermittent failures on NetBSD led to commit 8d9d5843b. (The new
certificate is still set up for IPv6, to make it easier to improve that
behavior in the future.)

Patch by Jonathan Gonzalez V., with some additional tests and tweaks by
me.

Author: Jonathan Gonzalez V. <[email protected]>
Discussion: 
https://postgr.es/m/[email protected]

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/a6483f5ac9680801da0c8ad207c2870c0d6a61c2

Modified Files
--------------
src/test/modules/oauth_validator/Makefile          |  1 +
src/test/modules/oauth_validator/meson.build       |  1 +
src/test/modules/oauth_validator/t/001_server.pl   | 51 ++++++++++++++++++----
src/test/modules/oauth_validator/t/OAuth/Server.pm |  7 ++-
src/test/modules/oauth_validator/t/oauth_server.py | 22 +++++++++-
.../ssl/conf/server-localhost-alt-names.config     | 20 +++++++++
src/test/ssl/ssl/server-localhost-alt-names.crt    | 20 +++++++++
src/test/ssl/ssl/server-localhost-alt-names.key    | 28 ++++++++++++
src/test/ssl/sslfiles.mk                           |  1 +
9 files changed, 136 insertions(+), 15 deletions(-)

Reply via email to