feat(pam): add Oracle credential rotation over the gateway - #391
feat(pam): add Oracle credential rotation over the gateway#391carlosmonastyrski wants to merge 4 commits into
Conversation
|
💬 Discussion in Slack: #pr-review-cli-391-feat-pam-add-oracle-credential-rotation-over-the-gateway Posted by Review Police — reviews, comments, new commits, and CI failures will stream into this channel. |
|
| GitGuardian id | GitGuardian status | Secret | Commit | Filename | |
|---|---|---|---|---|---|
| 37071517 | Triggered | Username Password | 007d52e | packages/gateway-v2/test_connection_oracle_test.go | View secret |
🛠 Guidelines to remediate hardcoded secrets
- Understand the implications of revoking this secret by investigating where it is used in your code.
- Replace and store your secret safely. Learn here the best practices.
- Revoke and rotate this secret.
- If possible, rewrite git history. Rewriting git history is not a trivial act. You might completely break other contributing developers' workflow and you risk accidentally deleting legitimate data.
To avoid such incidents in the future consider
- following these best practices for managing and storing secrets including API keys and other credentials
- install secret detection on pre-commit to catch secret before it leaves your machine and ease remediation.
🦉 GitGuardian detects secrets in your source code to help developers and security teams secure the modern development process. You are seeing this because you or someone else with access to this repository has authorized GitGuardian to scan your pull request.
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
|
Warning Review the following alerts detected in dependencies. According to your organization's Security Policy, it is recommended to resolve "Warn" alerts. Learn more about Socket for GitHub.
|
|
| Filename | Overview |
|---|---|
| packages/gateway-v2/sql_handler.go | Implements bounded SQL rotation requests, Oracle-safe password-change statements, and corrected timeout and account-identity handling. |
| packages/gateway-v2/test_connection_handler.go | Adds Oracle connection testing with TLS integration, Oracle verification SQL, and credential redaction. |
| packages/gateway-v2/gateway.go | Registers the SQL ALPN protocol and restricts SQL forwarding to platform actors. |
| packages/gateway-v2/test_connection_oracle_test.go | Covers Oracle driver routing, TLS failures, secret redaction, dialect rejection, and password-rotation statement behavior. |
| packages/pam/handlers/oracle/proxy_auth.go | Exports the existing Oracle TLS configuration helper for reuse by gateway connection tests. |
| packages/pam/local/access.go | Displays Oracle’s required proxy-password placeholder in connection details and examples. |
| packages/pam/agent/instructions.go | Documents Oracle as the exception to the usual passwordless proxy instructions. |
Reviews (2): Last reviewed commit: "Fix go.mod" | Re-trigger Greptile
PR overviewAll previously flagged issues have been addressed. No open security concerns remain on this pull request. Security reviewNo open security issues remain on this pull request. Fixed/addressed: 1 · PR risk: 0/10 |
|
@greptile re-review this PR and update the top Greptile Summary |
Description 📣
The Gateway can now change an Oracle user's password on Infisical's behalf, which is what makes Oracle credential rotation and health checks work end to end.
It also handles the awkward parts of Oracle specifically: databases that enforce a password policy, which reject a password change unless the old one is supplied, and accounts reached over an encrypted connection, which Infisical could not check on its own. Connecting to an Oracle account through the CLI now tells you to type
passwordin your client's password field, Oracle is the one database that refuses to log in without something in that box, and the Gateway swaps in the real credential for you.Error messages from failed Oracle connections no longer echo the connection string back, so a password can't end up in a status message.
Type ✨
Tests 🛠️
# Here's some code block to paste some code snippets