Skip to content

Commit 0ec435f

Browse files
committed
keep haproxy crt
2 parents b6586d9 + eba452a commit 0ec435f

31 files changed

+1270
-329
lines changed

core/docker-compose.yml

Lines changed: 19 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ services:
55
ports:
66
- 80:80
77
- 443:443
8+
volumes:
9+
- ./haproxy/haproxy.pem:/usr/local/etc/haproxy/haproxy.pem
810
networks:
911
coreconextdev:
1012
aliases:
@@ -41,7 +43,7 @@ services:
4143
- ./dbschema:/docker-entrypoint-initdb.d
4244
- openconext_mariadb:/var/lib/mysql
4345
healthcheck:
44-
test: ["CMD", "mysqladmin", "ping", "-h", "localhost"]
46+
test: ["CMD", "mysqladmin", "-uroot", "-psecret", "ping", "-h", "localhost"]
4547
timeout: 5s
4648
retries: 10
4749
hostname: mariadb.docker
@@ -62,18 +64,19 @@ services:
6264
- ./mongo/:/docker-entrypoint-initdb.d/
6365
- openconext_mongodb:/bitnami/mongodb
6466
healthcheck:
65-
test:
66-
[
67-
"CMD",
68-
"mongosh",
69-
"-u",
70-
"managerw",
71-
"-p",
72-
"secret",
73-
"--eval",
74-
"db.stats().ok",
75-
"mongodb://127.0.0.1/manage",
76-
]
67+
test: ['CMD', 'true']
68+
# test:
69+
# [
70+
# "CMD",
71+
# "mongosh",
72+
# "-u",
73+
# "managerw",
74+
# "-p",
75+
# "secret",
76+
# "--eval",
77+
# "db.stats().ok",
78+
# "mongodb://127.0.0.1/manage",
79+
# ]
7780
interval: 10s
7881
timeout: 10s
7982
retries: 3
@@ -132,7 +135,7 @@ services:
132135
hostname: mujinasp.docker
133136

134137
managegui:
135-
image: ghcr.io/openconext/openconext-manage/manage-gui:7.4.9
138+
image: ghcr.io/openconext/openconext-manage/manage-gui:latest
136139
environment:
137140
HTTPD_CSP: ""
138141
HTTPD_SERVERNAME: "manage.dev.openconext.local"
@@ -154,7 +157,7 @@ services:
154157
condition: service_healthy
155158

156159
manageserver:
157-
image: ghcr.io/openconext/openconext-manage/manage-server:7.4.9
160+
image: ghcr.io/openconext/openconext-manage/manage-server:latest
158161
environment:
159162
USE_SYSTEM_CA_CERTS: true
160163
volumes:
@@ -186,7 +189,7 @@ services:
186189
condition: service_healthy
187190

188191
oidcng:
189-
image: ghcr.io/openconext/openconext-oidcng/oidcng:6.1.14
192+
image: ghcr.io/openconext/openconext-oidcng/oidcng:latest
190193
networks:
191194
coreconextdev:
192195
volumes:
@@ -463,10 +466,6 @@ services:
463466

464467
sbs-server:
465468
image: ghcr.io/surfscz/sram-sbs-server:main
466-
environment:
467-
TESTING: 1
468-
PROFILE: "local"
469-
ALLOW_MOCK_USER_API: 1
470469
volumes:
471470
- ./sbs/config:/opt/sbs/config
472471
networks:
Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,18 @@
11
---
2+
# This configuration uses a sub-mount for ./engine/parameters.yml
3+
# Make sure to NEVER write to parameters.yml in ${ENGINE_CODE_PATH} after starting
4+
# the container. It will destroy the sub-mount!!
25
services:
36
engine:
47
image: ghcr.io/openconext/openconext-basecontainers/${ENGINE_PHP_IMAGE:-php72-apache2-node14-composer2:latest}
58
volumes:
69
- ${ENGINE_CODE_PATH}:/var/www/html
10+
- ./engine/parameters.yml:/var/www/html/app/config/parameters.yml
711
- ./engine/appconf.conf:/etc/apache2/sites-enabled/appconf.conf
812
environment:
913
- APP_ENV=${APP_ENV:-dev}
10-
# - SYMFONY_ENV=${APP_ENV:-dev}
14+
- SYMFONY_ENV=${APP_ENV:-dev}
1115
- APP_DEBUG=1
16+
healthcheck:
17+
test: ["CMD", "true"]
18+
interval: 10s

core/engine/parameters.yml

Lines changed: 151 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,151 @@
1+
# This file is auto-generated during the composer install
2+
parameters:
3+
secret: secret
4+
domain: dev.openconext.local
5+
hostname: engine.dev.openconext.local
6+
trusted_proxies:
7+
- 192.168.1.1
8+
- 10.0.0.1
9+
enabled_languages:
10+
- nl
11+
- en
12+
attribute_definition_file_path: '%kernel.project_dir%/application/configs/attributes.json'
13+
encryption_keys:
14+
default:
15+
publicFile: /config/engine/engineblock.crt
16+
privateFile: /config/engine/engineblock.pem
17+
forbidden_signature_methods: { }
18+
allowed_acs_location_schemes:
19+
- http
20+
- https
21+
metadata_add_requested_attributes: all
22+
php_settings:
23+
memory_limit: 256M
24+
display_errors: '1'
25+
error_reporting: '6135'
26+
date.timezone: Europe/Amsterdam
27+
sendmail_from: 'OpenConext EngineBlock <[email protected]>'
28+
http_client.timeout: 60
29+
api.users.metadataPush.username: manage
30+
api.users.metadataPush.password: secret
31+
api.users.profile.username: profile
32+
api.users.profile.password: secret
33+
api.users.deprovision.username: lifecycle
34+
api.users.deprovision.password: secret
35+
pdp.host: 'https://pdp.dev.openconext.local'
36+
pdp.username: pdp_admin
37+
pdp.password: secret
38+
pdp.client_id: EngineBlock
39+
pdp.policy_decision_point_path: /pdp/api/decide/policy
40+
attribute_aggregation.base_url: 'https://aa.dev.openconext.local/internal/attribute/aggregation'
41+
attribute_aggregation.username: eb
42+
attribute_aggregation.password: secret
43+
logger.channel: engineblock
44+
logger.fingers_crossed.passthru_level: NOTICE
45+
logger.fingers_crossed.action_level: ERROR
46+
logger.line_format: '[%%datetime%%] %%channel%%.%%level_name%%: %%message%% %%extra%% %%context%%'
47+
database.host: mariadb
48+
database.port: '3306'
49+
database.user: ebrw
50+
database.password: secret
51+
database.dbname: eb
52+
database.test.host: mariadb
53+
database.test.port: '3306'
54+
database.test.user: ebrw
55+
database.test.password: secret
56+
database.test.dbname: eb
57+
engineblock.metadata_push_memory_limit: 256M
58+
minimum_execution_time_on_invalid_received_response: 5000
59+
addgueststatus_guestqualifier: 'urn:collab:org:dev.openconext.local'
60+
cookie.path: /
61+
cookie.secure: true
62+
cookie.locale.domain: .dev.openconext.local
63+
cookie.locale.expiry: 5184000
64+
cookie.locale.http_only: false
65+
cookie.locale.secure: true
66+
view_default_title: OpenConext
67+
view_default_header: OpenConext
68+
view_default_logo: /images/logo.png
69+
view_default_logo_width: 96
70+
view_default_logo_height: 96
71+
env_name: ''
72+
env_ribbon_color: ''
73+
ui_return_to_sp_link: false
74+
email_request_access_address: [email protected]
75+
monitor_database_health_check_query: 'SELECT uuid FROM user LIMIT 1;'
76+
wayf.cutoff_point_for_showing_unfiltered_idps: 50
77+
wayf.remember_choice: false
78+
wayf.display_default_idp_banner_on_wayf: true
79+
wayf.default_idp_entity_id: 'https://default-idp.dev.openconext.local'
80+
global.site_notice.show: false
81+
global.site_notice.allowed.tags: '<a><u><i><br><wbr><strong><em><blink><marquee><p><ul><ol><dl><li><dd><dt><div><span><blockquote><hr><h2></h2><h3><h4><h5><h6>'
82+
time_frame_for_authentication_loop_in_seconds: 60
83+
maximum_authentication_procedures_allowed: 5
84+
maximum_authentications_per_session: 5
85+
consent_store_values: true
86+
email_idp_debugging:
87+
from:
88+
name: 'OpenConext EngineBlock'
89+
90+
to:
91+
92+
name: 'OpenConext Admin'
93+
subject: 'IdP debug info from %%1$s'
94+
mailer_transport: smtp
95+
mailer_host: localhost
96+
mailer_port: '25'
97+
mailer_user: ''
98+
mailer_password: ''
99+
feature_eb_encrypted_assertions: true
100+
feature_eb_encrypted_assertions_require_outer_signature: true
101+
feature_api_metadata_push: true
102+
feature_api_consent_listing: true
103+
feature_api_consent_remove: true
104+
feature_api_metadata_api: true
105+
feature_api_deprovision: true
106+
feature_run_all_manipulations_prior_to_consent: false
107+
feature_block_user_on_violation: false
108+
feature_enable_consent: true
109+
feature_stepup_sfo_override_engine_entityid: false
110+
feature_enable_idp_initiated_flow: true
111+
feature_enable_sram_interrupt: true
112+
profile_base_url: 'https://profile.dev.openconext.local'
113+
stepup.authn_context_class_ref_blacklist_regex: '/http:\/\/vm\.openconext\.org\/assurance\/loa[1-3]/'
114+
stepup.loa.mapping:
115+
10:
116+
engineblock: 'http://dev.openconext.local/assurance/loa1'
117+
gateway: 'http://dev.openconext.local/assurance/loa1'
118+
15:
119+
engineblock: 'http://dev.openconext.local/assurance/loa1_5'
120+
gateway: 'http://dev.openconext.local/assurance/loa1_5'
121+
20:
122+
engineblock: 'http://dev.openconext.local/assurance/loa2'
123+
gateway: 'http://dev.openconext.local/assurance/loa2'
124+
30:
125+
engineblock: 'http://dev.openconext.local/assurance/loa3'
126+
gateway: 'http://dev.openconext.local/assurance/loa3'
127+
stepup.loa.loa1: 'http://dev.openconext.local/assurance/loa1'
128+
stepup.gateway.sfo.entity_id: 'https://gateway.dev.openconext.local/second-factor-only/metadata'
129+
stepup.gateway.sfo.sso_location: 'https://gateway.dev.openconext.local/second-factor-only/single-sign-on'
130+
stepup.gateway.sfo.key_file: /config/engine/engineblock.crt
131+
stepup.sfo.override_engine_entityid: ''
132+
theme.name: skeune
133+
feature_enable_sso_notification: false
134+
sso_notification_encryption_algorithm: AES-256-CBC
135+
sso_notification_encryption_key: '<xxx>'
136+
sso_notification_encryption_key_salt: '<xxx>'
137+
feature_enable_sso_session_cookie: false
138+
sso_session_cookie_max_age: 0
139+
auth.log.attributes: { }
140+
141+
sram.api_token: secret
142+
sram.base_url: 'https://sbs.dev.openconext.local/api/users/'
143+
sram.authz_location: authz_eb
144+
sram.attributes_location: attributes_eb
145+
sram.interrupt_location: interrupt
146+
sram.verify_peer: false
147+
sram.allowed_attributes:
148+
- 'urn:mace:dir:attribute-def:eduPersonEntitlement'
149+
- 'urn:mace:dir:attribute-def:uid'
150+
- 'urn:mace:dir:attribute-def:eduPersonPrincipalName'
151+
- 'urn:mace:surf.nl:attribute-def:ssh-key'

core/haproxy/haproxy.crt

Lines changed: 123 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,123 @@
1+
Certificate:
2+
Data:
3+
Version: 3 (0x2)
4+
Serial Number:
5+
51:33:21:1e:ab:33:b1:87:3f:57:e6:a8:7c:4f:47:4a:70:fb:50:79
6+
Signature Algorithm: sha256WithRSAEncryption
7+
Issuer: C=NL, O=dev.openconext.local, CN=dev.openconext.local, [email protected]
8+
Validity
9+
Not Before: Apr 29 11:38:37 2025 GMT
10+
Not After : Apr 27 11:38:37 2035 GMT
11+
Subject: C=NL, O=dev.openconext.local, CN=dev.openconext.local, [email protected]
12+
Subject Public Key Info:
13+
Public Key Algorithm: rsaEncryption
14+
Public-Key: (4096 bit)
15+
Modulus:
16+
00:b4:da:0b:73:d9:cd:a4:61:6d:35:c2:fa:0e:ec:
17+
e0:58:b5:95:16:8f:49:a3:3f:fa:d1:56:eb:78:67:
18+
a8:c9:85:95:a5:2d:e5:26:b1:b0:d3:34:14:f8:a1:
19+
3e:bd:79:ca:2a:5c:16:5d:ee:26:cc:b7:f2:4d:08:
20+
fe:23:8c:f0:ff:b1:b5:4f:33:c0:b2:c8:50:f4:41:
21+
b2:85:43:48:1c:46:10:47:2a:2e:64:12:59:5c:72:
22+
de:5f:9b:82:2b:29:02:9f:e6:aa:a3:5f:f2:31:14:
23+
64:ec:31:04:73:12:fe:e5:34:f2:c9:42:92:39:57:
24+
d2:b5:d3:59:ed:24:fa:00:44:90:fb:db:b3:12:b3:
25+
a2:f9:9f:e1:26:eb:bb:51:d6:11:36:e2:a0:dd:25:
26+
98:23:d7:8f:93:fc:96:fb:b9:77:23:92:54:10:33:
27+
e6:07:93:75:bd:3c:d6:d1:85:95:f6:81:97:af:49:
28+
4a:11:8a:c9:b3:43:b0:fb:09:71:16:3b:c2:3f:88:
29+
13:2e:08:ac:33:69:08:47:01:05:f3:c1:05:cc:41:
30+
aa:87:2f:4c:b7:a6:6b:32:70:4e:6d:a5:da:c3:50:
31+
9f:c2:7e:e5:9a:db:a7:d1:e7:b4:0f:4c:f2:a4:de:
32+
11:19:1f:47:6f:4c:67:ad:95:1f:33:94:e7:01:5b:
33+
e9:f4:e2:4b:bb:d5:57:a7:c3:b5:a5:c4:1e:c3:41:
34+
01:dc:c6:2f:84:1b:dc:b1:3f:4e:22:36:d1:da:ec:
35+
de:0f:a8:3f:1b:40:7c:7f:a9:d9:a6:a4:36:b6:d9:
36+
af:46:41:49:6e:03:c3:6e:c8:27:f0:a9:9b:07:e0:
37+
81:ed:8e:e2:f9:d3:65:7b:de:35:0b:e2:b8:12:77:
38+
72:54:3e:e1:53:8e:a7:6a:f7:20:8a:be:15:8d:b1:
39+
b2:44:a5:32:51:a3:7e:b2:d3:78:19:2f:2d:34:6b:
40+
7c:ad:9b:98:11:5b:9c:6f:e7:50:da:da:5a:95:ea:
41+
c7:01:8f:4b:5e:a1:cc:71:72:d7:b8:3b:5d:97:71:
42+
a9:1c:ba:b0:f3:48:d1:a7:64:a4:dd:a9:50:02:bd:
43+
51:c2:71:d8:1e:a8:f6:2c:a3:de:14:5f:c8:cf:32:
44+
4c:b8:7c:40:15:8a:2c:13:1f:dc:41:44:ca:9d:55:
45+
9a:cb:33:db:df:1f:fa:8e:09:b8:34:59:f6:1a:10:
46+
eb:93:bf:f4:51:4c:27:1c:52:73:93:74:93:92:8f:
47+
bf:89:12:6a:28:80:5c:c9:12:f6:6d:58:7c:d0:8f:
48+
c4:22:01:9d:02:63:cc:78:fc:30:99:2e:1e:8f:8f:
49+
bd:4f:26:fe:36:ce:a6:64:b7:eb:3e:3a:50:e7:b3:
50+
18:f6:9d
51+
Exponent: 65537 (0x10001)
52+
X509v3 extensions:
53+
X509v3 Subject Alternative Name:
54+
DNS:dev.openconext.local, DNS:*.dev.openconext.local
55+
X509v3 Basic Constraints:
56+
CA:TRUE, pathlen:0
57+
X509v3 Subject Key Identifier:
58+
A0:CB:77:1E:80:D6:3B:64:5B:2F:0E:1D:BE:5F:D1:82:06:3E:2B:17
59+
Signature Algorithm: sha256WithRSAEncryption
60+
Signature Value:
61+
26:07:7c:e5:83:2d:4f:3c:fd:71:03:b1:f3:74:54:79:36:fb:
62+
86:dd:bc:b1:cc:1a:39:17:26:41:5a:2a:7a:3d:74:bf:e9:bc:
63+
b5:09:23:26:b4:51:ba:ec:0b:04:c2:68:6c:74:79:30:c1:8c:
64+
09:06:37:dd:3e:32:e5:f0:a4:a9:8c:4d:cd:8b:30:68:6e:61:
65+
0f:a2:d9:bb:13:b6:bb:10:7e:64:b7:80:9b:3d:21:61:11:e2:
66+
a7:84:85:22:06:60:b6:8d:16:72:f1:76:e4:da:cb:90:1e:e9:
67+
5a:e7:72:b5:a5:9f:a3:90:ed:a7:e2:21:ba:ae:dc:c8:39:e9:
68+
87:d6:aa:29:d7:2c:ba:b7:f2:1b:f8:91:7c:df:1a:82:47:c9:
69+
7e:27:d2:fb:b4:76:4a:29:2e:b3:44:54:84:e7:98:40:83:a5:
70+
3b:4f:b1:9f:38:22:ae:99:d6:bb:e9:62:44:61:c7:b5:87:41:
71+
4d:a8:31:65:fb:01:88:df:8c:8e:e0:92:88:74:d4:b7:82:d6:
72+
7b:46:53:fb:20:2a:aa:b4:f5:e6:9b:54:6c:0d:b7:9f:7a:e1:
73+
74:7e:01:0e:44:77:5e:a8:03:96:d5:c6:74:51:ec:ef:bf:77:
74+
2f:59:79:98:65:d0:dd:34:5d:8e:48:bb:b4:fd:8a:94:31:f4:
75+
28:36:92:3d:6a:3c:fc:b6:89:de:12:8b:ad:98:5b:78:6c:64:
76+
18:5b:8c:9a:e9:28:6c:d7:31:4d:53:a1:03:70:6d:3d:5a:8b:
77+
e8:9a:c4:84:56:11:32:b6:93:c4:d2:25:43:db:4e:d6:73:29:
78+
90:f3:a3:ed:59:56:66:63:b3:fb:89:97:28:f0:72:52:cd:c8:
79+
6e:3e:2a:1e:d6:7d:69:5b:43:68:69:2e:2d:4b:4e:f9:b5:28:
80+
e5:2b:10:79:43:ad:da:b3:49:33:01:f7:31:25:b6:34:68:8d:
81+
22:ad:02:5c:8f:fa:14:b1:06:79:de:98:a3:f7:5a:20:32:82:
82+
ba:f1:37:54:c8:86:da:bb:be:67:58:cb:20:24:52:05:a6:31:
83+
b9:e5:4d:7e:22:0c:4a:7a:d0:c1:ad:79:0d:73:fe:16:58:b0:
84+
45:b8:5d:20:14:5e:63:ab:f1:db:4d:4f:44:04:24:46:0a:c6:
85+
03:6b:04:7f:8c:df:25:5d:3a:ad:b1:31:cd:16:8e:bf:20:66:
86+
dc:b4:b4:49:91:ce:2f:13:cf:9d:c9:4f:09:1b:a1:f7:33:0d:
87+
a9:3a:e2:e8:6f:da:ea:ac:88:fa:c4:f9:a3:77:35:c2:8c:b6:
88+
79:7d:e6:57:2b:4e:e7:99:3d:cc:79:49:61:c5:30:25:8b:d7:
89+
2c:1f:9c:c7:d9:91:2f:ea
90+
-----BEGIN CERTIFICATE-----
91+
MIIF4zCCA8ugAwIBAgIUUTMhHqszsYc/V+aofE9HSnD7UHkwDQYJKoZIhvcNAQEL
92+
BQAwdTELMAkGA1UEBhMCTkwxHTAbBgNVBAoMFGRldi5vcGVuY29uZXh0LmxvY2Fs
93+
MR0wGwYDVQQDDBRkZXYub3BlbmNvbmV4dC5sb2NhbDEoMCYGCSqGSIb3DQEJARYZ
94+
aW5mb0BkZXYub3BlbmNvbmV4dC5sb2NhbDAeFw0yNTA0MjkxMTM4MzdaFw0zNTA0
95+
MjcxMTM4MzdaMHUxCzAJBgNVBAYTAk5MMR0wGwYDVQQKDBRkZXYub3BlbmNvbmV4
96+
dC5sb2NhbDEdMBsGA1UEAwwUZGV2Lm9wZW5jb25leHQubG9jYWwxKDAmBgkqhkiG
97+
9w0BCQEWGWluZm9AZGV2Lm9wZW5jb25leHQubG9jYWwwggIiMA0GCSqGSIb3DQEB
98+
AQUAA4ICDwAwggIKAoICAQC02gtz2c2kYW01wvoO7OBYtZUWj0mjP/rRVut4Z6jJ
99+
hZWlLeUmsbDTNBT4oT69ecoqXBZd7ibMt/JNCP4jjPD/sbVPM8CyyFD0QbKFQ0gc
100+
RhBHKi5kEllcct5fm4IrKQKf5qqjX/IxFGTsMQRzEv7lNPLJQpI5V9K101ntJPoA
101+
RJD727MSs6L5n+Em67tR1hE24qDdJZgj14+T/Jb7uXcjklQQM+YHk3W9PNbRhZX2
102+
gZevSUoRismzQ7D7CXEWO8I/iBMuCKwzaQhHAQXzwQXMQaqHL0y3pmsycE5tpdrD
103+
UJ/CfuWa26fR57QPTPKk3hEZH0dvTGetlR8zlOcBW+n04ku71Venw7WlxB7DQQHc
104+
xi+EG9yxP04iNtHa7N4PqD8bQHx/qdmmpDa22a9GQUluA8NuyCfwqZsH4IHtjuL5
105+
02V73jUL4rgSd3JUPuFTjqdq9yCKvhWNsbJEpTJRo36y03gZLy00a3ytm5gRW5xv
106+
51Da2lqV6scBj0teocxxcte4O12XcakcurDzSNGnZKTdqVACvVHCcdgeqPYso94U
107+
X8jPMky4fEAViiwTH9xBRMqdVZrLM9vfH/qOCbg0WfYaEOuTv/RRTCccUnOTdJOS
108+
j7+JEmoogFzJEvZtWHzQj8QiAZ0CY8x4/DCZLh6Pj71PJv42zqZkt+s+OlDnsxj2
109+
nQIDAQABo2swaTA3BgNVHREEMDAughRkZXYub3BlbmNvbmV4dC5sb2NhbIIWKi5k
110+
ZXYub3BlbmNvbmV4dC5sb2NhbDAPBgNVHRMECDAGAQH/AgEAMB0GA1UdDgQWBBSg
111+
y3cegNY7ZFsvDh2+X9GCBj4rFzANBgkqhkiG9w0BAQsFAAOCAgEAJgd85YMtTzz9
112+
cQOx83RUeTb7ht28scwaORcmQVoqej10v+m8tQkjJrRRuuwLBMJobHR5MMGMCQY3
113+
3T4y5fCkqYxNzYswaG5hD6LZuxO2uxB+ZLeAmz0hYRHip4SFIgZgto0WcvF25NrL
114+
kB7pWudytaWfo5Dtp+Ihuq7cyDnph9aqKdcsurfyG/iRfN8agkfJfifS+7R2Siku
115+
s0RUhOeYQIOlO0+xnzgirpnWu+liRGHHtYdBTagxZfsBiN+MjuCSiHTUt4LWe0ZT
116+
+yAqqrT15ptUbA23n3rhdH4BDkR3XqgDltXGdFHs7793L1l5mGXQ3TRdjki7tP2K
117+
lDH0KDaSPWo8/LaJ3hKLrZhbeGxkGFuMmukobNcxTVOhA3BtPVqL6JrEhFYRMraT
118+
xNIlQ9tO1nMpkPOj7VlWZmOz+4mXKPByUs3Ibj4qHtZ9aVtDaGkuLUtO+bUo5SsQ
119+
eUOt2rNJMwH3MSW2NGiNIq0CXI/6FLEGed6Yo/daIDKCuvE3VMiG2ru+Z1jLICRS
120+
BaYxueVNfiIMSnrQwa15DXP+FliwRbhdIBReY6vx201PRAQkRgrGA2sEf4zfJV06
121+
rbExzRaOvyBm3LS0SZHOLxPPnclPCRuh9zMNqTri6G/a6qyI+sT5o3c1woy2eX3m
122+
VytO55k9zHlJYcUwJYvXLB+cx9mRL+o=
123+
-----END CERTIFICATE-----

0 commit comments

Comments
 (0)