Skip Headers

Oracle Advanced Security README
Release 2 (9.2)

Oracle Advanced Security README Release 2 (9.2)
Copyright © 2002, Oracle Corporation. All rights reserved.

The Programs (which include both the software and documentation) contain proprietary information of Oracle Corporation; they are provided under a license agreement containing restrictions on use and disclosure and are also protected by copyright, patent and other intellectual and industrial property laws. Reverse engineering, disassembly or decompilation of the Programs, except to the extent required to obtain interoperability with other independently created software or as specified by law, is prohibited.

The information contained in this document is subject to change without notice. If you find any problems in the documentation, please report them to us in writing. Oracle Corporation does not warrant that this document is error free. Except as may be expressly permitted in your license agreement for these Programs, no part of these Programs may be reproduced or transmitted in any form or by any means, electronic or mechanical, for any purpose, without the express written permission of Oracle Corporation.

RESTRICTED RIGHTS LEGEND:

If the Programs are delivered to the US Government or anyone licensing or using the Programs on behalf of the US Government, the following notice is applicable:


RESTRICTED RIGHTS NOTICE

Programs delivered subject to the DOD FAR Supplement are commercial computer software and use, duplication and disclosure of the Programs including documentation, shall be subject to the licensing restrictions set forth in the applicable Oracle license agreement. Otherwise, Programs delivered subject to the Federal Acquisition Regulations are 'restricted computer software' and use, duplication, and disclosure of the Programs shall be subject to the restrictions in FAR 52.227-19, Commercial Computer Software - Restricted Rights (June, 1987). Oracle Corporation, 500 Oracle Parkway, Redwood City, CA 94065.

The Programs are not intended for use in any nuclear, aviation, mass transit, medical, or other inherently dangerous applications. It shall be licensee's responsibility to take all appropriate fail-safe, back up, redundancy and other measures to ensure the safe use of such applications if the Programs are used for such purposes, and Oracle Corporation disclaims liability for any damages caused by such use of the Programs.


TRADEMARKS

Oracle is a registered trademark, and SQL*Plus, Oracle8i, and Oracle9i are trademarks or registered trademarks of Oracle Corporation. Other names may be trademarks of their respective owners.

All trade names referenced are the service mark, trademark, or registered trademark of the respective manufacturer.

Portions of Oracle Advanced Security have been licensed by Oracle Corporation from RSA Data Security.

Documentation Accessibility:

Our goal is to make Oracle products, services, and supporting documentation accessible, with good usability, to the disabled community. To that end, our documentation includes features that make information available to users of assistive technology. This documentation is available in HTML format, and contains markup to facilitate access by the disabled community. Standards will continue to evolve over time, and Oracle Corporation is actively engaged with other market-leading technology vendors to address technical obstacles so that our documentation can be accessible to all of our customers. For additional information, visit the Oracle Accessibility Program Web site at

http://www.oracle.com/accessibility/

Accessibility of Code Examples in Documentation:

JAWS, a Windows screen reader, may not always correctly read the code examples in this document. The conventions for writing code require that closing braces should appear on an otherwise empty line; however, JAWS may not always read a line of text that consists solely of a bracket or brace.

Accessibility of Links to External Web Sites in Documentation:

This documentation may contain links to Web sites of other companies or organizations that Oracle Corporation does not own or control. Oracle Corporation neither evaluates nor makes any representations regarding the accessibility of these Web sites.

-----------------------------------------------

CONTENTS

1 INTRODUCTION
2 CHANGES IN THIS RELEASE
3 INSTALLATION
4 DATA ENCRYPTION AND INTEGRITY
5 EXTERNAL AUTHENTICATION AND SINGLE SIGN-ON
6 ENTRUST SUPPORT
7 SECURE SOCKETS LAYER
8 ORACLE WALLET MANAGER 3.0
9 ORACLE JAVASSL AND JSSE
10 ORACLE ENTERPRISE SECURITY MANAGER 9.2
11 USER MIGRATION UTILITY

1 INTRODUCTION

This README file is relevant only to the delivered Oracle Advanced Security release 2 (9.2) product. This README documents any differences between the product and its documented functionality, as well as known problems and workarounds. Operating system releases, such as UNIX, Windows NT, OpenVMS, and so on, often provide an operating system specific README document.

Oracle Advanced Security release 2 (9.2) bundles security services for Oracle9i. It secures connections over all protocols into Oracle9i and integrates a Public Key Infrastructure (PKI). Oracle Advanced Security provides data encryption and integrity for all network protocols into the database, including Oracle Net with native encryption, Oracle Net/SSL, IIOP/SSL, and Java-based encryption for thin JDBC clients. It integrates with third-party authentication, authorization and single sign-on services. It supports public key solutions including Secure Sockets Layer (SSL) and X.509 Version 3 certificates (provided by third-party certificate servers) and bundles related tools, Oracle Wallet Manager 3.0 and Oracle Enterprise Login Assistant 9.0. It also enables SSL-based single sign-on and enables certificate-based server-to-server authentication and database links. Oracle Advanced Security integrates with Entrust PKI in this release.

Oracle Advanced Security utilizes LDAP v3-compliant directory servers to centralize user management, and it bundles Oracle Enterprise Security Manager 3.0 to manage enterprise users and enterprise roles. Oracle Advanced Security provides restricted use of Oracle Internet Directory release 3.0 for storage of users and authorizations. It also integrates with Microsoft Active Directory for role management. In future releases we will integrate directly only with Oracle Internet Directory, which acts as a gateway to integrate with all other LDAP-compliant directories, including Microsoft Active Directory.

See Also:

  • the "Directory Integration Platform" topic in Oracle Internet Directory Administrator's Guide

  • Oracle9i Directory Service Integration and Deployment Guide

In this release, Oracle Advanced Security installs automatically during Typical Install. In order to use it, you must purchase appropriate licenses, install it either automatically in Typical Install or manually using Custom Install, then configure it on the servers and clients. All components install in Typical Install except DCE, which installs in Custom Install.

Although installed by default, Oracle Advanced Security is an extra cost option to Oracle9i Enterprise Edition and must be purchased when used. This licensing requirement also affects customers wishing to use security features in combination with Java Beans (EJB over IIOP/SSL) or database enterprise users (over Oracle Net/SSL). The exclusive exception is an HTTPS (HTTP/SSL) connection to the RDBMS, which does not require an Oracle Advanced Security license.

See Also:

Oracle Advanced Security Administrator's Guide

2 CHANGES IN THIS RELEASE

The following features are new in this release:

3 INSTALLATION

During Oracle Advanced Security installation, three .bak files are created: naeet.o.bak, naect.o.bak, and naedhs.o.bak. They are located in $ORACLE_HOME/lib. Do not delete these files because they are required when executables are relinked during the de-installation of Oracle Advanced Security.

If using Oracle Advanced Security on a "client only" machine (that is, with no database present), then it is mandatory to set the TWO_TASK environment variable before starting the installation. The TWO_TASK variable points to an alias representing the database on a server machine. Setting the TWO_TASK environment variable enables Oracle Advanced Security to be installed in "Client Only" mode.

See Also:

Oracle9i Administrator's Guide for more information about the TWO_TASK environment variable.

4 DATA ENCRYPTION AND INTEGRITY

In this release, the configuration tool, Oracle Net Manager, does not provide a default seed for generating cryptographic keys. You must manually enter an arbitrary string between 10 and 70 characters in length. Enter different seeds on every client and every server. The seed is one of the elements used to generate random numbers used in the Diffie-Hellman key exchange.

In this release, the NS features of Multiplexing and Connection Pooling do not work if SSL transport is being used.

4.1 Known Bugs and Workarounds

Bug 2285343

There is a known problem in which Oracle clients (sqlplus or svrmgrl) fail when the RADIUS adapter is configured for CHAP (challenge-response) mode.

Workaround

To workaround this problem, set the LD_LIBRARY_PATH environment variable to include $ORACLE_HOME/JRE/lib/sparc/native_threads.

5 EXTERNAL AUTHENTICATION AND SINGLE SIGN-ON

In order to require external authentication and disable username/ password authentication, set the sqlnet.ora parameter to SQLNET.AUTHENTICATION_REQUIRED=TRUE. The default is false.

The Identix adapter is desupported as of Oracle Advanced Security 9.0.1.

Since the previous release of Oracle Advanced Security 9.0.1, the RSA ACE/Server and tokens can authenticate Oracle users only through the RADIUS adapter. Using the RADIUS plug-in to the ACE/Server, the ACE/Server acts as the RADIUS server and authentication server. Functionality remains the same as in previous releases.

Oracle Advanced Security supports RADIUS-compliant servers and authentication devices. To use the Java-based client interface for RADIUS, you must include $ORACLE_HOME/JRE/lib/sparc/native_threads in LD_LIBRARY_PATH. To use RADIUS, you must use native threads. Set the variable THREADS_FLAG to "native" within the Java runtime environment (JRE).

During installation on a Windows platform, if you configured the RADIUS adapter, then please reboot the machine to get the JRE location. [Reference Bug 2212844]

In this release, Oracle extends support for RADIUS authorizations in Challenge-Response mode for servers brought up in either Dedicated or MTS mode.

5.1 Changes to the Startup Command

In this release, if external authentication (using Kerberos, Cybersafe, or RADIUS) is not enabled, then please verify that you have issued the startup command with a PFILE option so that the parameters from your init<SID>.ora are picked up.

With Oracle 9.0.1, we introduced the server managed parameter file (SPFILE). The SPFILE can be used to store parameters that are automatically tuned by the server. When a startup command is issued without a PFILE option, the client requests that the server starts up using an SPFILE. The server looks for the SPFILE (?/dbs/spfile.ora) and reads parameters from it. If the SPFILE is not found, the server tries to use a default PFILE (?/dbs/init@.ora) on the server side.

If the startup command is issued with a PFILE option, then the existing behavior is retained.

6 ENTRUST SUPPORT

This release supports Entrust version 5.0.2, 5.1, and 6.0 components including IPSEC Negotiator Toolkit, Entrust/Authority, and Server Login. On HP-UX 64-bit, Solaris 64-bit, and Compaq Tru 64 platforms, Oracle Advanced Security supports Entrust 6.0 PKI.

On Windows, you must install Entrust Entelligence on the client.

You must have the same version of Entrust tool kits and the Entrust Authority if you are using 5.x versions of Entrust. For example, you can use 5.1 version everywhere or 5.0.2 version for the tool kits and the Entrust/Authority.

However, you can have Entrust 6.0 IPSEC Negotiator and Server Login tool kit with 5.1 Entrust/Authority.

In this release (just as in 9.0.1), you do not have to choose between Entrust or SSL upon installation. You can use both together since this release allows SSL and Entrust on the same machine without relinking.

You must set the CLASSPATH environment variable on the client (Windows or UNIX) to include the following jar files in the order they are listed:

$ORACLE_HOME/JRE/lib/i18n.jar $ORACLE_HOME/JRE/lib/rt.jar $ORACLE_HOME/network/jlib/netentrust.jar $ORACLE_HOME/jlib/swingall-1_1_1.jar $ORACLE_HOME/jlib/ewt-3_3_18.jar $ORACLE_HOME/jlib/share-1_1_9.jar

[Reference Bug 1794800]

6.1 Enterprise User Security Support for Entrust Users

Entrust users can now be managed centrally in Oracle Internet Directory. The database and Oracle Internet Directory must have Entrust UAL files to permit unattended login when configuring for enterprise user security. You cannot have a mixed environment such as X.509v3 certificates for some clients/servers and entrust profiles for the others. The configuration set used to set up LDAP for SSL should specify a WRL to locate the entrust UAL file. The WRL should have the following format:

entr:<UAL directory path>/*.ual::<ini file directory path>/*.ini::1

Because the Oracle Internet Directory server and the database communicate on the SSL port, the specific SSL configuration set has to be configured to use client and server authentication for orclauthentication. If you do not do this, then the database distinguished name (DN) will bind as NULL.

7 SECURE SOCKETS LAYER

For the SSL adapter, dynamic specification of sqlnet.ora parameters such as SSL_VERSION, SSL_CIPHER_SUITES, and SSL_CLIENT_AUTHENTICATION, as part of TNS aliases, do not have any effect on the redirected connections made to the database server.

7.1 Known Bugs

Bug 1661031

An OCI client requires a wallet even when using a cipher suite with DH_anon, which does not authenticate the client. Such cipher suites are known to be vulnerable to person-in-the-middle attacks. If you use a cipher suite with DH_anon, then you should use Oracle Advanced Security native encryption and checksumming to protect against the attack.

Bug 2267857

Certificate size limits.

7.2 Secure Sockets Layer Distinguished Name Match

In this release (as in the previous release 9.0.1), the SSL client matches the server's global database name against the distinguished name (DN) from the server certificate. This check protects against the threat of connections to a server potentially faking its identity, in which the server has a valid X.509 v3 certificate, but not the proper certificate for this database.

Setting the sqlnet.ora parameter SSL_SERVER_DN_MATCH to ON or OFF controls the system's behavior when there is a mismatch between the service name and the DN. When set to OFF, if the DN matches the service name, then the connection succeeds. If the DN does not match the service name, then the connection succeeds but an error is written to sqlnet.log. When the parameter is set to ON, if the DN matches the service name, the connection succeeds. If it does not match, then the connection fails. ON, OFF, TRUE, FALSE, YES, NO are all acceptable values.

The corresponding Oracle Net Manager parameter "Match server X.509 name" can be set to Yes, No, or Let the Client Decide. Yes and No correspond to the sqlnet.ora parameter described above, while Let the Client Decide bases the behavior on the version of the client.

The following describes the two ways to properly set up the system. Oracle Corporation recommends the first.

Oracle Corporation recommends using Oracle Wallet Manager to remove the trusted certificates in your Oracle wallet for all of the certificate authorities that you do not use.

8 ORACLE WALLET MANAGER 3.0

8.1 Known Bugs

Bug 1077099

Certificate request creation fails with some multibyte character sets.

Bug 1114710

Oracle Wallet Manager Online Help becomes unresponsive when modal dialog boxes, such as the one to enter Certificate Request Information, pop up. The Online Help becomes responsive once the modal dialog box is closed.

8.2 Oracle Wallet Manager on Solaris

When trying to copy or paste certificates in Oracle Wallet Manager you need to use Shift+Insert and Ctrl+Insert respectively. The extended Sun keyboard keys ("Cut, Copy, Paste") will not work on Solaris.

9 ORACLE JAVASSL AND JSSE

If the jsse.jar provided by your platform vendor and jcert.jar are present in the classpath, then javax-ssl-1*.jar should not be present in the classpath. Further, Oracle Corporation recommends that you use jssl-1_1.jar because jssl-1_2.jar may cause problems.

To use Oracle JavaSSL, the following Java security properties must be set:

ssl.SocketFactory.provider=oracle.security.ssl.OracleSSLSocketFactoryImpl
ssl.ServerSocketFactory.provider=oracle.security.ssl.OracleSSLServerSocketFactoryImpl

If jsse.jar and jcert.jar are installed as extensions (located in $JAVA_HOME/jre/lib/ext), then jssl-1_1.jar must be installed in the same directory.

10 ORACLE ENTERPRISE SECURITY MANAGER 9.2

Enterprise Security Manager 9i, Release 2 has the capability of automatically creating a wallet for the database and users. Please note that these wallets are only intended for ease of building a demo or for rapid testing purposes.

Oracle Corporation does not recommend using these wallets for your production operations. We recommend, instead, that you use certificates generated by the certificate authority vendor of your choice and associate that certificate with the database or user wallet.

10.1 Known Bugs and Workarounds

Bug 2293192

The administrator for the user search base, is not able to create users. For example, cn=admuser cannot create users under cn=users,c=us.

Workaround

Using the example listed above, add cn=admuser to OracleUserSecurityAdmins.

Bug 2299074

A user who belongs to both OracleUserSecurityAdmins and OracleDBSecurityAdmins (or indirectly to OraclePasswordAccessibleDomains) is not able to change passwords.

Bug 2210818

Cannot view the Oracle Context version with Enterprise Security Manager.

Workaround

You can use Enterprise Security Manager to check whether it is an Oracle8i or 9i context. An ldapsearch allows you to distinguish between an Oracle9i, Release 1 or Release2 context (9iR1 or 9iR2, respectively).

Bug 2040979

Enterprise Security Manager does not show search bases if the distinguished name (DN) matches beyond two levels.

Workaround

Do not use multiple Oracle Contexts in a directory tree with DNs that match beyond two levels.

Bug 1906630

Changing the database password from Enterprise Login Assistant does not generate the correct database password verifier.

Workaround

Do not use DNs to log onto Enterprise Login Assistant. The user should use their "User ID" to connect to the database using Enterprise Login Assistant.

Bug 2234811

Enterprise Security Manager creates the role but displays an error "Permission Denied: Your login doesn't have the correct privileges for this operation".

Workaround

Ignore this error.

Bug 2250699

Enterprise Security Manager crashes when Oracle Internet Directory is shutdown.

Workaround

Restart Enterprise Security Manager.

10.2 Command Line Tool for Enterprise Security Manager 9.2

In this release, customers are provided the option to use the Enterprise Security Manager command line tool. This tool includes the functionality to create new enterprise users and to provision or enable existing directory user entries to participate in enterprise user security.

To start the tool, type esm -cmd, which displays the full tool syntax (help).


Note:

When the Oracle Context is required as input, use the context base rather than the actual DN of the Oracle Context. For example, use 'c=us' if your context is 'cn=OracleContext,c=us'.


10.2.1 Known Bugs and Workarounds

Bugs 2282536, 2282579, 2282626, 2282376

Some of the less frequently used options displayed in the help description that are not supported in this release are: addGlobalRole, addPasswordAccessibleDomains, addDomainDatabase and removeMapping.

Workaround

These administrative actions can be performed with the Enterprise Security Manager GUI interface.

Bug 2271773

When DNs are required as input for the various commands, spaces within attribute values in the DNs are not supported. For example, "cn=john doe,c=us" is not supported due to the space between john and doe, but "cn=john,c=us" is supported.

Workaround

Do not use DNs that include spaces within attribute values.

Bug 2282312

When creating a new enterprise domain with createDomain, the default domain administrator is set incorrectly to be the DN of the Oracle Context.

Workaround

Use the Enterprise Security Manager GUI tool to remove the Oracle Context as a domain administrator, and add an appropriate user instead.

Bug 2282444 (Enhancement Request)

When using the Enterprise Security Manager command line tool to modify attributes relevant to an entire Oracle Context, such as User Search Bases and userIDAttribute, values for both attributes need to be included on the command line, even if only one of them is being modified.

Bug 2282479 (Enhancement Request)

There is no input verification when adding a new context administrator. Ensure that the DN being added is a valid user entry in the directory.

Bug 2282471 (Enhancement Request)

For the various role operations (for example, grantRole), the full DN of the enterprise role is required as input. The syntax for enterprise role DNs is:

"cn=<role name>,cn=<enterprise domain name>,cn=OracleDBSecurity,cn=Products,  
cn=OracleContext,<context location>".

11 USER MIGRATION UTILITY

New in the 9i Release 2 release is the User migration command line utility. This tool allows administrators to migrate database users to the directory to participate in enterprise user security. Using this tool allows exclusive schema users to be mapped to a shared schema during the migration process. Additionally, the user migration utility provisions/enables existing directory users for use with Oracle Advanced Security's Enterprise User Security feature.

The tool has a JRE 1.3.1 dependency. You should set JAVA_HOME or CLASSPATH to point to the JRE 1.3.1 file.

See Also:

Oracle Advanced Security Administrator's Guide, Chapter 16, "Migrating Local or External Users to Enterprise Users"


Oracle
Copyright © 2002 Oracle Corporation.

All Rights Reserved.