| Lesson 7 | Security features of Oracle |
| Objective | Discuss core Oracle security features, including external authentication patterns and modern Oracle 23ai identity integration. |
Oracle security is implemented as a set of layered controls that protect (1) identities, (2) network connections, (3) stored data, and (4) privileged activity. This lesson focuses on the network and authentication portion of that stack—how Oracle validates users, integrates with enterprise identity services, and protects credentials and sessions in transit.
Oracle Advanced Security (OAS) is the primary feature set for securing Oracle Net sessions with strong authentication and cryptographic protection. In practice, OAS is used to standardize how clients connect to the database—reducing reliance on database passwords, enabling enterprise authentication, and applying encryption and integrity checks to traffic between clients and database servers.
Oracle supports multiple authentication models, and most organizations use a combination: database accounts for service identities and operational access, plus external authentication for workforce identities.
Directory-based identity reduces administrative overhead and improves control. Rather than managing user credentials independently inside every database, organizations centralize identity in a directory and map those identities to database authorization policies (roles, privileges, and schemas).
Kerberos is a widely adopted network authentication protocol that provides strong authentication using symmetric key cryptography and tickets. Oracle supports Kerberos authentication (version 5), making it a natural fit for environments using Active Directory or MIT Kerberos.
Key characteristics:
Kerberos is commonly implemented alongside or instead of RADIUS in enterprise Oracle deployments, particularly where Active Directory is the central identity source. The protocol eliminates password transmission entirely, with authentication handled through encrypted ticket exchanges between the client, Key Distribution Center (KDC), and database server.
Remote Authentication Dial-In User Service (RADIUS) is a lightweight, widely adopted protocol for authentication, authorization, and accounting (AAA), defined in RFC 2865 (Authentication) and RFC 2866 (Accounting). Oracle environments have used RADIUS to integrate token-based authentication (including one-time password systems) and to centralize authentication decisions outside the database.
RADIUS can be valuable when you need to plug Oracle authentication into an existing AAA ecosystem. A key benefit is decoupling: you can change the underlying authentication method (for example, switching token vendors) without requiring changes to Oracle clients or application code, as long as the RADIUS interface remains stable.
From the user's perspective, the process should be transparent. The client attempts to connect, and the database server delegates the authentication decision to an external service. The RADIUS server typically:
Oracle Wallets are secure containers for storing credentials, certificates, and cryptographic keys. They provide a standardized approach to credential management and support:
Wallets eliminate the need to embed passwords in configuration files and enable centralized management of cryptographic materials. Oracle Wallet Manager and command-line utilities (orapki) are used to create and maintain wallets in production environments.
The diagram below reflects a common Oracle 11g-era approach: the database server operates as the RADIUS client and delegates authentication to a centralized RADIUS (or RSA ACE–compatible) service. The architecture remains conceptually valid, but it should be treated as a historical reference because many modern deployments prefer TLS-based connectivity plus federated identity (IdP) integration for workforce authentication.
Oracle 11g-era RADIUS integration components (left to right):
Communication flow:
In Oracle 23ai-era designs, organizations typically standardize on encrypted network transport (TLS/TCPS) and shift workforce authentication toward a central Identity Provider (IdP). Modern IdP integration uses OAuth 2.0 and OpenID Connect (OIDC) protocols for token-based authentication and SSO. Oracle Database 23ai can validate these identity tokens, allowing users to authenticate once at the IdP and access multiple resources without re-entering credentials.
In this model, multi-factor authentication (MFA) is executed at the IdP layer and Oracle trusts the validated identity assertion. RADIUS and Kerberos often remain in the environment for interoperability with legacy systems or specific use cases, but federated identity with an IdP is commonly treated as the default architecture for workforce authentication.
What this diagram highlights: clients connect over encrypted Oracle Net (TCPS), Oracle enforces authorization locally, and identity/MFA is centralized in an IdP. RADIUS and Kerberos may still be present for legacy token or access-gateway workflows.
Mermaid source used to generate the diagram (reference):
flowchart LR
subgraph C[Clients]
A1[Client App\n(SQL*Plus / JDBC / ODP.NET / App Server)]
end
subgraph N[Connectivity Layer]
B1[Oracle Net / TCPS\n(mTLS, wallets, cert validation)]
B2[Optional: Connection Pool\n(UCP / App Server Pool)]
end
subgraph D[Oracle Database 23ai]
C1[Oracle DB 23ai\nAuthN/AuthZ Engine]
C2[Database Users / Schemas\nGlobal Users / Local Users]
C3[Unified Auditing\n& Security Policies]
end
subgraph I[Identity & MFA Services]
D1[Identity Provider (IdP)\nOIDC / OAuth2 (SSO)]
D2[MFA Service\n(FIDO2/WebAuthn, TOTP, Push)]
D3[Directory / HR Source\n(AD/LDAP)]
end
subgraph L[Legacy / Interop]
E1[RADIUS Server\n(or RSA/ACE-compatible)]
E2[PAM / Access Gateway\n(optional)]
end
A1 -->|SQL over TLS| B1
A1 -->|Optional pooled sessions| B2 --> B1
B1 -->|Auth handshake + session| C1
C1 -->|Federation / token validation| D1
D1 --> D2
D1 --> D3
C1 -.->|If required for legacy flows| E2
E2 -.-> E1
C1 --> C2
C1 --> C3
[1] RADIUS: Acronym for Remote Authentication Dial-In User Service, a client-server AAA protocol used to centralize authentication and access decisions (RFC 2865, RFC 2866).