Skip to content

Commit e4e211c

Browse files
committed
use ssl by default in postgres tests
1 parent 490711a commit e4e211c

File tree

13 files changed

+244
-38
lines changed

13 files changed

+244
-38
lines changed

.cargo/config

-5
This file was deleted.

Cargo.lock

+26-29
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
File renamed without changes.
File renamed without changes.
File renamed without changes.

db-test-setup/postgres/Dockerfile

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
FROM postgres:16-alpine
2+
3+
# Copy the SSL certificates
4+
5+
COPY --chown=postgres:postgres ./ssl /ssl
6+
7+
CMD ["postgres", "-c", "ssl=on", "-c", "ssl_cert_file=/ssl/server.crt", "-c", "ssl_key_file=/ssl/server.key"]

db-test-setup/postgres/ssl/README.md

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# Postgres SSL setup
2+
3+
This directory contains dummy SSL certificates for testing purposes.
4+
Don't use these certificates for anything other than testing.
5+
6+
The goal is to test the ability of SQLPage to connect to a Postgres database using SSL.
+30
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
-----BEGIN ENCRYPTED PRIVATE KEY-----
2+
MIIFHDBOBgkqhkiG9w0BBQ0wQTApBgkqhkiG9w0BBQwwHAQI3Ywr4wOmP2kCAggA
3+
MAwGCCqGSIb3DQIJBQAwFAYIKoZIhvcNAwcECImnmpeLNbLFBIIEyCXo6EAO1UOs
4+
iSLKcb8jqXd+ZkvGD3BHNxoT9aIOmv81GFwIgCbuK6qhXloMa7PT8IwFBF78JYAZ
5+
flAG1cAlxZjPqR+ZEtaAd0vdNHFPtvgCMO9usgP4PGfuFQbpQIJL0DoUZs8iLgdp
6+
v6d1dGzxABq1kx9RHz2f/cgZXvBPphMcGbQFIpc4G2l1KjEJB4SnaiwrGexa3X3d
7+
K48lXlU7Zlp0FbNq8cTXBtFmIInVZmuoZOySITT/vBlp9NKfh++jwaR7Ney/nNeE
8+
VvIhKE+S+msbpwzI9mtn0h0vjLPVd+ZK4kLGzFuTnYRoJuHEO2MBJ+bJaxEG0Kn1
9+
klST2R236PHnc3JBFgWP8tHtxn54btv0RuwwWVwJUaQLsdFi5VznSDPqMWJQdaOQ
10+
MU0SgzZEEJksYfxfdofTPtcoTKYLEA2hG3bwuyhMHd9POSbhTXfeVn3HGRvDYZuv
11+
iskvZ8kViPnsk6TkGwXVWsqjMUknybddMhIxVo6ob5JBCjGskUIfmPIkoWkgv6JT
12+
lYT/KP+uPvWccrsYtoCoqnVnYI3oDDuShUWd/VJ6gAQ62uGTwpAg4F96INvbhS6r
13+
eo+4PatfBggxJo5m2pIw1HiqLtthJ32u1kTlsrf64slWKsA/GoiBWDUfPydYI5Tn
14+
38gth53MDz2b+g2/unCd9dEyeQzDhdpgvHzpZYEmKmzrhOYRMiyryC3A4nO8LEwa
15+
saAhKypMI9l3aG/55fYiZT41srSCTEM9cynsdjfm4QCvGR0rsYgqLel+8/1ooCp8
16+
mSn+ldnx53hDSXA/kbynJelL7hmpMgZ198pnp3uRZbkDxQ7iawf6L7UPslhjo3Qh
17+
F7a/FvN/fYTIZ0u4/iqRVuXTI1RZNfoYaiVLZh/wxkTBSJPfMfVFtxwNHMrqF6Kw
18+
Do8wvPxqi/dMs1IKsChC7+VuVHn1JlZAfy5/4EaqK0twh5bXDgIT4RnmS25JAyC8
19+
o6y5s2Bzl6jVlssfTrrmlgjrgQrglP+rJqVf9Vv5v9Kffu1jUfNJ9/DWXgn8aQd8
20+
qBL+2Up/hxPE6YYqvZsQwUdjmpMDaGsUAnVgJbyp2eoC7c0giU9OKDsHdVM6XNcQ
21+
WzT+e29WC43OWIiL+mWS6lFWZnShH34moVbjcvhCVNLV5wnkPkNOUfuLy2zb6fkm
22+
sDgxjh3/zdodvvclKQpfzFmXTxBi9UBUnPs03ssL4FLgSSbRMhsV+zj6utmlYmTU
23+
koFZ6tR9IWZfIP6RgY5BOCinOu9rfgTlTKNRFrOmc02hINHw/QjWJB3LK7C/7UBc
24+
lp81AYiHumwd6eArK30IoQb/uhFGGbVzVxuad5P/W0CYX5W7TtnXjVpOEdmLKZxg
25+
Qgoq0AoLLZXViaoTdxunv6roJ0qo4almyf0Jyx8Vas2XYbifJlx2x04Uxvjm/GhM
26+
2W9EIDYZgzosbe2ON0XeeAJ09xZUxQZtmJrsxrBQ8FSpkCL8iO4kBWQlo5ktyLcv
27+
GN0Q78efDqlGD4rvDCKL5MJjxOpk0CQJ0mdTdA4DGldFlMmVFlTEy9P+ztpyRfU2
28+
2Bkq9ByTtKQH0T+z/JQTnX/jb9WsELEOJ4FkddmnzRWYSRclKl4+iNzRuk5it7th
29+
IDfEy0du+0vnOa0xObrUnQ==
30+
-----END ENCRYPTED PRIVATE KEY-----

db-test-setup/postgres/ssl/server.crt

+77
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
Certificate:
2+
Data:
3+
Version: 3 (0x2)
4+
Serial Number:
5+
5a:b5:ee:1b:4c:15:cf:08:8b:63:87:39:12:61:bc:97:c2:55:19:af
6+
Signature Algorithm: sha256WithRSAEncryption
7+
Issuer: CN = postgres
8+
Validity
9+
Not Before: May 2 12:54:42 2024 GMT
10+
Not After : Jun 1 12:54:42 2024 GMT
11+
Subject: CN = postgres
12+
Subject Public Key Info:
13+
Public Key Algorithm: rsaEncryption
14+
Public-Key: (2048 bit)
15+
Modulus:
16+
00:d4:f0:6b:40:ec:46:a2:0d:94:1b:ea:54:f0:80:
17+
3f:39:4b:16:38:9b:c2:d7:a3:dd:00:03:d8:3d:64:
18+
b0:65:03:6f:4a:0f:6f:95:c1:ed:0f:2a:91:33:fb:
19+
f7:fc:47:4c:59:b6:97:6c:09:4a:e6:ba:ce:d2:c8:
20+
1d:7b:81:d0:17:e4:d9:42:85:95:df:12:1d:59:c0:
21+
f3:b3:85:28:7c:ce:29:df:23:b7:4c:a2:77:8a:df:
22+
2f:ac:df:41:84:1e:06:c0:7b:f0:f4:1c:ba:9e:af:
23+
bd:87:6d:8b:1c:8f:49:05:5a:d6:b3:06:68:83:aa:
24+
38:96:27:85:30:bd:82:10:e9:f7:b1:a3:09:4f:af:
25+
42:3d:c8:8a:63:40:4e:a1:95:f4:2e:3a:81:95:d3:
26+
17:41:f0:20:9f:e9:37:2b:52:97:7f:11:4e:86:93:
27+
6f:57:1a:35:d3:93:83:c5:b6:57:ec:f3:f7:46:1c:
28+
d4:26:b8:e4:10:77:d9:d0:7f:4b:b5:a5:62:d4:9d:
29+
7f:3a:d6:7f:1b:9c:18:2b:2b:c2:35:3b:a6:80:c6:
30+
c9:52:0f:06:4d:7f:da:88:38:7e:25:bc:7c:16:ae:
31+
3f:fc:78:da:6b:7c:28:8b:f4:df:d9:0c:3d:64:94:
32+
29:82:96:e8:82:4e:90:d5:e6:a6:d6:89:c2:eb:22:
33+
cc:ad
34+
Exponent: 65537 (0x10001)
35+
X509v3 extensions:
36+
X509v3 Subject Key Identifier:
37+
69:AD:45:23:C0:49:B4:44:05:2D:A4:01:9C:EF:EC:0A:F4:F9:78:90
38+
X509v3 Authority Key Identifier:
39+
69:AD:45:23:C0:49:B4:44:05:2D:A4:01:9C:EF:EC:0A:F4:F9:78:90
40+
X509v3 Basic Constraints: critical
41+
CA:TRUE
42+
Signature Algorithm: sha256WithRSAEncryption
43+
Signature Value:
44+
5e:5d:4f:67:6e:3b:57:b6:5a:8d:1d:e8:dc:8c:be:29:8e:f5:
45+
29:43:48:34:d1:e3:a3:aa:4e:99:12:b7:3d:ed:a2:8e:3c:cd:
46+
ff:82:d3:d0:61:99:e3:40:1c:14:b3:87:86:43:7f:eb:22:bd:
47+
95:ff:64:e9:3f:ba:e5:74:6e:62:92:80:16:83:ec:f6:6e:1b:
48+
5c:8e:7e:65:ee:7d:bf:5a:18:6e:47:7e:86:60:70:36:38:9f:
49+
26:d4:cf:f1:0d:9d:23:43:72:b9:2e:43:4a:3a:4d:b0:04:1d:
50+
6d:e6:f4:2b:77:c3:75:eb:f2:4a:ac:3d:87:5b:73:cb:67:da:
51+
e8:82:6b:d0:1b:2e:55:93:e4:c9:e6:80:e7:ee:41:d0:50:87:
52+
83:3f:81:aa:50:71:9c:3e:81:b6:52:9a:40:4c:e1:97:29:c9:
53+
8b:5e:44:cc:aa:d9:41:91:94:1b:35:0d:e6:75:d7:46:a0:eb:
54+
ac:b2:98:ac:cb:af:6b:83:ce:8d:28:5b:c0:a3:7d:66:a9:dc:
55+
d9:f9:f4:c4:ce:88:c5:5f:fa:2d:4a:05:5f:37:70:ee:03:3e:
56+
79:ca:d5:e8:a0:f6:5c:3a:24:5b:18:29:89:4e:a9:79:6f:e6:
57+
2d:71:f1:42:8f:0f:96:7c:d6:07:51:a6:21:c2:17:dc:1d:b5:
58+
46:63:f8:26
59+
-----BEGIN CERTIFICATE-----
60+
MIIDBzCCAe+gAwIBAgIUWrXuG0wVzwiLY4c5EmG8l8JVGa8wDQYJKoZIhvcNAQEL
61+
BQAwEzERMA8GA1UEAwwIcG9zdGdyZXMwHhcNMjQwNTAyMTI1NDQyWhcNMjQwNjAx
62+
MTI1NDQyWjATMREwDwYDVQQDDAhwb3N0Z3JlczCCASIwDQYJKoZIhvcNAQEBBQAD
63+
ggEPADCCAQoCggEBANTwa0DsRqINlBvqVPCAPzlLFjibwtej3QAD2D1ksGUDb0oP
64+
b5XB7Q8qkTP79/xHTFm2l2wJSua6ztLIHXuB0Bfk2UKFld8SHVnA87OFKHzOKd8j
65+
t0yid4rfL6zfQYQeBsB78PQcup6vvYdtixyPSQVa1rMGaIOqOJYnhTC9ghDp97Gj
66+
CU+vQj3IimNATqGV9C46gZXTF0HwIJ/pNytSl38RToaTb1caNdOTg8W2V+zz90Yc
67+
1Ca45BB32dB/S7WlYtSdfzrWfxucGCsrwjU7poDGyVIPBk1/2og4fiW8fBauP/x4
68+
2mt8KIv039kMPWSUKYKW6IJOkNXmptaJwusizK0CAwEAAaNTMFEwHQYDVR0OBBYE
69+
FGmtRSPASbREBS2kAZzv7Ar0+XiQMB8GA1UdIwQYMBaAFGmtRSPASbREBS2kAZzv
70+
7Ar0+XiQMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEBAF5dT2du
71+
O1e2Wo0d6NyMvimO9SlDSDTR46OqTpkStz3too48zf+C09BhmeNAHBSzh4ZDf+si
72+
vZX/ZOk/uuV0bmKSgBaD7PZuG1yOfmXufb9aGG5HfoZgcDY4nybUz/ENnSNDcrku
73+
Q0o6TbAEHW3m9Ct3w3Xr8kqsPYdbc8tn2uiCa9AbLlWT5MnmgOfuQdBQh4M/gapQ
74+
cZw+gbZSmkBM4ZcpyYteRMyq2UGRlBs1DeZ110ag66yymKzLr2uDzo0oW8CjfWap
75+
3Nn59MTOiMVf+i1KBV83cO4DPnnK1eig9lw6JFsYKYlOqXlv5i1x8UKPD5Z81gdR
76+
piHCF9wdtUZj+CY=
77+
-----END CERTIFICATE-----

db-test-setup/postgres/ssl/server.key

+28
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
-----BEGIN PRIVATE KEY-----
2+
MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDU8GtA7EaiDZQb
3+
6lTwgD85SxY4m8LXo90AA9g9ZLBlA29KD2+Vwe0PKpEz+/f8R0xZtpdsCUrmus7S
4+
yB17gdAX5NlChZXfEh1ZwPOzhSh8zinfI7dMoneK3y+s30GEHgbAe/D0HLqer72H
5+
bYscj0kFWtazBmiDqjiWJ4UwvYIQ6fexowlPr0I9yIpjQE6hlfQuOoGV0xdB8CCf
6+
6TcrUpd/EU6Gk29XGjXTk4PFtlfs8/dGHNQmuOQQd9nQf0u1pWLUnX861n8bnBgr
7+
K8I1O6aAxslSDwZNf9qIOH4lvHwWrj/8eNprfCiL9N/ZDD1klCmCluiCTpDV5qbW
8+
icLrIsytAgMBAAECggEAEDjfpuLJL8PSjnzf6zGN/36jqvzcz2JNrhhc4zJ2SL/F
9+
/PGnmdRcC719seTme8rvu17wcrvTf7foFUFHE7dsQ8G8tndoV0XxQ/rx5fGFR9rJ
10+
8FSvfHBdJJCDuIsKmfbSo1vd268LnZa8XOKgyDR3RufodtuMX0l6xZ+toyywybpx
11+
mzmTFXASctCkPCIAd0jSJ3cGp3t/wBb29zq+yDAhsLgpzq7qL0jo59fvgYAksnnp
12+
BeupBUCG8KgjHcRyybleH1beNjPw7hjf384dN19/RsDM3VxGpPOkBeum2DWg59GO
13+
SsdQVYVL5VjYP+Lpd03d13JeNk8LvvvnE3/KrOs/OQKBgQD/bhgW+5HKFXxiqInJ
14+
r/TFaiMP/jmnxtGhLG+XOPuG1D36U1LfyONn7POc57dN4NYsuBnuvGbcHBAFnU/W
15+
AzbuB4RISYn06NmIJNFf0Nasm901b5yOYho1jgyXxDfg0WawUxIDfWZUa07RFhcF
16+
g2rrlLkyQimvcEeApLw7pfK4ZQKBgQDVag2nm8ANp0/vIlA/YCMDMZq2d00tt4+A
17+
8N5W/94+S9jnU7XU+8ubAsuR1PolLZsXy57wmP2PPtbS6QA7ta3tz5KuUYUw8MRi
18+
YaXLhJ9LBeQFbGF4gqRKSFfUFUZAQuj63z9GkBEqvEEEQFQE8LFoAmQEVROPStlN
19+
1atsCGSqqQKBgQDGxa4JdIvnbwD05aMUSNF6LzZJ49SKM7Y+bo4IaFeUfOYeP2lm
20+
rLYK0eJiYA/NkwIYmsvTdNm2wD/XnqvaJ3Y/lanjdxbcd7eQstYccjAc8s4aH1j9
21+
lGpA8uHp2NCDK3F2Fa8W+CcB2t/i5gXUTIiP+5SC/+nglMeP3KJ+6I0R4QKBgQDO
22+
YxCvfdU+nwaTmdiHYZ6akRcwzLErvDAgn1A2TJ4OGuW52N+pCJT/5LUf5BrBZ5hs
23+
a7Pas+nK5Rd1wnVCSVHaAPq2cAnhqYYSKqLe7fPq5th8UjL1C0p8t/eQF77nmI2d
24+
R9b2k462iHZL+TYHzQmUL3OwKOKQme8K8c8k2/0WeQKBgGK7HZRjDGoxlfLx0WLV
25+
b//gtdWIFD2rjRxMGMsvj+xRpK7xjz+5h3ULcEei13CgSlpTGtdV0B3WciTTJJMI
26+
JIEi23dzOGi3aj04W4VlQVpsGITVhb0Y5Q8R2jYt95xfETW2cu5kcCiee9B1UFjB
27+
y2Pz6+9ERVYaTkkHwfBZj2DK
28+
-----END PRIVATE KEY-----

db-test-setup/postgres/ssl/server.req

+62
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
Certificate Request:
2+
Data:
3+
Version: 1 (0x0)
4+
Subject: CN = postgres
5+
Subject Public Key Info:
6+
Public Key Algorithm: rsaEncryption
7+
Public-Key: (2048 bit)
8+
Modulus:
9+
00:d4:f0:6b:40:ec:46:a2:0d:94:1b:ea:54:f0:80:
10+
3f:39:4b:16:38:9b:c2:d7:a3:dd:00:03:d8:3d:64:
11+
b0:65:03:6f:4a:0f:6f:95:c1:ed:0f:2a:91:33:fb:
12+
f7:fc:47:4c:59:b6:97:6c:09:4a:e6:ba:ce:d2:c8:
13+
1d:7b:81:d0:17:e4:d9:42:85:95:df:12:1d:59:c0:
14+
f3:b3:85:28:7c:ce:29:df:23:b7:4c:a2:77:8a:df:
15+
2f:ac:df:41:84:1e:06:c0:7b:f0:f4:1c:ba:9e:af:
16+
bd:87:6d:8b:1c:8f:49:05:5a:d6:b3:06:68:83:aa:
17+
38:96:27:85:30:bd:82:10:e9:f7:b1:a3:09:4f:af:
18+
42:3d:c8:8a:63:40:4e:a1:95:f4:2e:3a:81:95:d3:
19+
17:41:f0:20:9f:e9:37:2b:52:97:7f:11:4e:86:93:
20+
6f:57:1a:35:d3:93:83:c5:b6:57:ec:f3:f7:46:1c:
21+
d4:26:b8:e4:10:77:d9:d0:7f:4b:b5:a5:62:d4:9d:
22+
7f:3a:d6:7f:1b:9c:18:2b:2b:c2:35:3b:a6:80:c6:
23+
c9:52:0f:06:4d:7f:da:88:38:7e:25:bc:7c:16:ae:
24+
3f:fc:78:da:6b:7c:28:8b:f4:df:d9:0c:3d:64:94:
25+
29:82:96:e8:82:4e:90:d5:e6:a6:d6:89:c2:eb:22:
26+
cc:ad
27+
Exponent: 65537 (0x10001)
28+
Attributes:
29+
(none)
30+
Requested Extensions:
31+
Signature Algorithm: sha256WithRSAEncryption
32+
Signature Value:
33+
9d:03:cd:5f:bd:9a:b2:db:dc:89:1c:3e:42:f3:6e:14:e3:d0:
34+
85:c7:db:53:75:77:3a:9a:1b:e5:f1:e0:5c:f9:cf:96:6d:71:
35+
fd:82:21:07:7c:d9:ce:60:d5:05:56:5e:d8:03:d4:e6:21:2e:
36+
e6:39:46:e1:6a:0a:d2:1c:48:a6:5d:be:52:ca:71:ce:b1:43:
37+
38:aa:2e:11:77:06:b9:5a:b7:96:54:c3:b3:54:ee:33:2f:de:
38+
b2:c0:22:01:07:79:50:42:10:1d:e8:cb:ff:51:fa:0e:cc:f2:
39+
a6:57:fb:8d:d0:02:1a:0c:48:58:90:82:82:70:ef:a6:f3:81:
40+
1a:7d:dc:49:49:db:cf:88:28:f5:64:20:c3:99:4c:33:37:59:
41+
d8:9e:fd:56:2e:77:e8:c8:b2:36:1b:8a:95:85:d1:81:7b:db:
42+
cc:f2:64:38:3f:59:62:ef:77:44:57:bc:3f:53:2c:ad:0e:88:
43+
ad:5d:83:24:f4:61:df:56:0a:cc:37:82:65:60:d1:d0:ad:2c:
44+
51:0b:9a:6d:02:83:c5:f1:67:95:b0:99:44:e6:64:47:ef:ac:
45+
b6:20:57:ea:b2:be:52:b3:e7:01:d1:69:8c:5a:a0:11:78:6b:
46+
45:0b:ad:7b:93:1c:77:c7:7b:c7:43:16:6c:82:31:2b:45:a2:
47+
28:64:30:91
48+
-----BEGIN CERTIFICATE REQUEST-----
49+
MIICWDCCAUACAQAwEzERMA8GA1UEAwwIcG9zdGdyZXMwggEiMA0GCSqGSIb3DQEB
50+
AQUAA4IBDwAwggEKAoIBAQDU8GtA7EaiDZQb6lTwgD85SxY4m8LXo90AA9g9ZLBl
51+
A29KD2+Vwe0PKpEz+/f8R0xZtpdsCUrmus7SyB17gdAX5NlChZXfEh1ZwPOzhSh8
52+
zinfI7dMoneK3y+s30GEHgbAe/D0HLqer72HbYscj0kFWtazBmiDqjiWJ4UwvYIQ
53+
6fexowlPr0I9yIpjQE6hlfQuOoGV0xdB8CCf6TcrUpd/EU6Gk29XGjXTk4PFtlfs
54+
8/dGHNQmuOQQd9nQf0u1pWLUnX861n8bnBgrK8I1O6aAxslSDwZNf9qIOH4lvHwW
55+
rj/8eNprfCiL9N/ZDD1klCmCluiCTpDV5qbWicLrIsytAgMBAAGgADANBgkqhkiG
56+
9w0BAQsFAAOCAQEAnQPNX72astvciRw+QvNuFOPQhcfbU3V3Opob5fHgXPnPlm1x
57+
/YIhB3zZzmDVBVZe2APU5iEu5jlG4WoK0hxIpl2+UspxzrFDOKouEXcGuVq3llTD
58+
s1TuMy/essAiAQd5UEIQHejL/1H6Dszyplf7jdACGgxIWJCCgnDvpvOBGn3cSUnb
59+
z4go9WQgw5lMMzdZ2J79Vi536MiyNhuKlYXRgXvbzPJkOD9ZYu93RFe8P1MsrQ6I
60+
rV2DJPRh31YKzDeCZWDR0K0sUQuabQKDxfFnlbCZROZkR++stiBX6rK+UrPnAdFp
61+
jFqgEXhrRQute5Mcd8d7x0MWbIIxK0WiKGQwkQ==
62+
-----END CERTIFICATE REQUEST-----

0 commit comments

Comments
 (0)