You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
refactor(oracle19c): DRY/inheritance trim of TLS work per follow-up review (#519,#538)
Follow-up DRY / over-engineering review (compare to how pg/mysql inherit crypto
from AWS; don't build machinery we don't need). Core stays — Oracle genuinely
requires the SSL option group + TCPS 2484 (unlike pg/mysql same-port TLS), and the
cipher pin is required (the AWS 19c default cipher is documented FedRAMP-No, so we
must override). Trimmed the extras:
- H4: dropped the hardcoded SSL_SERVER_CERT_DN from the binding (uri/jdbcUrl
descriptor + the ssl_server_cert_dn key). pg/mysql publish no DN; the Oracle
driver verifies server identity against the CA bundle + ssl_server_dn_match. The
DN was Amazon-owned + would break on cert rotation, and (M1) was unverified/
guessed. Kept ssl_required + ssl_server_dn_match + ca_cert_bundle_url.
- Q5 (DRY): extracted ensureOptionGroupWithOptions (describe→create-if-absent→
modify); both ProvisionBaselineOptionGroup and ProvisionOrModifyCustomOptionGroup
now call it, removing the byte-identical CreateOptionGroupInput literal +
ModifyOptionGroup call.
- S1: options.yml is our own committed file, not tenant input — moved the FedRAMP
value-assertions (TLS==1.2, FIPS on, cipher allowlist) from a runtime guard to a
CI test (TestOracleSSLBaselineIsFedRAMPCompliant), matching how pg/mysql have no
runtime param guard. Kept a cheap runtime cipher/CA COMPATIBILITY guard on the
provision path (option-b: oracleSSLCipherCACompatible) so a future ECDSA-on-RSA
edit fails before the opaque AWS associate error; removed sortedKeys.
- Docs (connection-examples/binding/hardening-baseline): removed the
ssl_server_cert_dn references to match.
Tests: TestOracleSSLBaselineIsFedRAMPCompliant (CI gate for the values),
TestOracleSSLCipherCACompatible (runtime guard), TestGetCredentials oracle-se2
updated (no cert DN). go test ./... + cmd/tasks green; go vet + pre-commit green.
Co-authored-by: OpenCode Agent <agent@gsa.gov>
0 commit comments