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
* fix(automl,autorag): add support for MinIO storage
Add S3 client support for in-cluster MinIO and other S3-compatible
object stores. Three configurable options control security behavior,
all defaulting to permissive for MinIO compatibility:
- S3_ALLOW_HTTP=true: permit plain HTTP S3 endpoints
- S3_INSECURE_SKIP_VERIFY=true: skip TLS cert verification
- S3_ALLOW_INTERNAL_IPS=true: allow RFC-1918 private IPs
Customers can set any of these to "false" via environment variables
to enforce stricter security policies. Loopback, link-local, and
reserved IP ranges remain always blocked.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* fix(automl,autorag): clone DefaultTransport for S3 client, add permissive mode tests
- Clone http.DefaultTransport instead of bare http.Transport to preserve
default timeouts and connection pooling. Add 30s client timeout.
- Add tests for the permissive (production-default) code paths:
HTTP accepted when AllowHTTP=true, private IPs accepted when
AllowInternalIPs=true, loopback/link-local still blocked when
permissive, HTTP+private IP combination works.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* fix(automl,autorag): address code review feedback for S3 client
- Add CGNAT 100.64.0.0/10 to automl blocked ranges (was already in autorag)
- Use named blockedRange type instead of repeated anonymous struct literals
- Fix autorag to use c.options.InsecureSkipVerify (post-defaults) instead
of raw opts
- Add CGNAT and IPv6 ULA test cases to permissive mode tests
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* fix(automl,autorag): use CA bundles for S3 TLS instead of skipping verification
Replace InsecureSkipVerify, AllowHTTP, and AllowInternalIPs env vars
(which were not settable in production) with proper CA bundle-based TLS
verification. The RHOAI operator already mounts cluster and custom CA
bundles into the BFF pod via --bundle-paths, so self-signed MinIO
certificates are validated against these bundles rather than skipped.
- Remove S3_INSECURE_SKIP_VERIFY, S3_ALLOW_HTTP, S3_ALLOW_INTERNAL_IPS
- Add RootCAs to S3ClientOptions, populated from operator-mounted bundles
- HTTPS always required (no plain HTTP)
- Private IPs always allowed (MinIO runs in-cluster)
- Dev-mode fallback: skip TLS verification when no CA bundles provided
- Add BUNDLE_PATHS support to Makefiles for local development
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* fix(automl,autorag): quote BUNDLE_PATHS in Makefile to prevent word-splitting
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* fix(automl,autorag): guard DefaultTransport assertion, add TLS tests, document SSRF allowlist
- Extract cloneDefaultTransport() to safely handle non-standard
http.DefaultTransport replacements (e.g. in test environments)
- Add TestNewRealS3Client_WithRootCAs and TestNewRealS3Client_DevModeFallback
to verify both TLS transport configuration paths
- Document CGN (100.64/10, RFC 6598) alongside RFC-1918 and IPv6 ULA
in validateIPAddress doc comments as permitted ranges
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-authored-by: Nicholas Mazzitelli <nickmazz@ca.ibm.com>
0 commit comments