Oracle Security Server Guide Release 2.0.3 A54088-01 |
|
This chapter details how database administrators (DBAs) and a security administrator perform the tasks involved in initializing the Oracle Security Server, including:
In order for you to use a given database as an Oracle Security Server Repository, that database must be running Oracle7 Server release 7.3.2 or higher, or Oracle8 Server, on any platform that Oracle supports.
Before proceeding with this installation, you must also make sure that SQL*Net release 7.3.2 or higher, or Net8 release 8.0.2 or higher, is running on the given database.
It is recommended that global users and global roles be defined to Oracle8 Servers before those users and roles are identified to the Oracle Security Server. The DBA associated with each relevant server should follow these steps, using the Security Manager feature of Oracle Enterprise Manager:
CREATE USER user IDENTIFIED GLOBALLY AS `C=country, O=organization, OU=organization_unit, ST=state, L=locality, CN=user'
Of the items that appear between the single quotes, only CN is mandatory.
See the Oracle8 Server SQL Reference for more information about the CREATE USER command.
See the Oracle8 Server SQL Reference for more information about the CREATE ROLE command.
A DBA should perform the following steps to configure an Oracle database to contain the Oracle Security Server Repository:
A new program group named Oracle Security Server appears on your desktop in response.
The Database Login Information Window appears in response.
A confirmation window appears in response. This window will ask you to confirm that you want the Oracle Security Server Repository to reside on the specified database.
Installing the Oracle Security Server Repository creates a new username called "oracle_security_service_admin." The oracle_security_service_admin user has read/write access to data in the Oracle Security Server Repository. You defined the password for this username within Step 4 of the procedure described above.
Note: Only one oracle_security_service_admin user can connect to the Oracle Security Server Repository at a time. |
The Login Information window appears in response.
A confirmation window appears in response. This window will ask you to confirm that you want to establish a certificate authority (CA) in connection with the new Oracle Security Server Repository.
The Oracle Security Server Manager window (Figure 3-1) appears in response.
In order to construct your Oracle Security Server Repository, you need to become familiar with the Oracle Security Server Manager. Chapter 4, Using the Oracle Security Server Manager, describes all the tasks that appear within the procedure that follows, and also other tasks that you can perform.
Please note the following in connection with this procedure:
Follow these steps to construct your Oracle Security Server Repository:
Figure 3-2 shows the Identity and credentials information for a typical CA.
Figure 3-3 shows the information for a typical Server.
You can define as many Servers as you wish during this step.
Figure 3-4 shows the information for a typical Server Authorization.
You can define as many Server Authorizations as you wish during this step.
Figure 3-5 shows the basic information for a typical Enterprise Authorization.
Figure 3-6 shows the Server Authorizations, associated with a particular Server, that have been assigned to a typical Enterprise Authorization.
You can define as many Enterprise Authorizations as you wish during this step.
Taken together, Server Authorizations and Enterprise Authorizations are the Oracle Security Server's implementation of the global role concept introduced in Chapter 1, "Oracle Security Server Concepts." Specifically, if an Identity defined within the Oracle Security Server is authorized to perform a particular role on a particular server, then a user who has been "identified globally" on that server can acquire a role, of the same name, that has been "identified globally" on that server.
Figure 3-7 shows the Identity and credentials information for a typical user Identity.
Figure 3-8 shows the Server Authorizations, associated with a particular Server, that have been assigned to a typical Identity.
Figure 3-9 shows the Enterprise Authorizations that have been assigned to a typical Identity.
You can define as many Identities as you wish during this step.
If you wish to enable the Oracle Security Adapter on a particular client or server, use Oracle Net8 Assistant or your command line to perform one or more of the following steps, as necessary, to modify the SQLNET.ORA file:
oss.source.my_wallet=(SOURCE = (METHOD=FILE) (METHOD_DATA= (DIRECTORY= directory_path) ) )
oss.source.location =(SOURCE= (METHOD=ORACLE) (METHOD=DATA= (SQLNET_ADDRESS=<service_name>) ) )
You use the osslogin tool to download a wallet, or to generate a clear private key by decrypting an encrypted private key contained within a wallet.
The syntax of the osslogin command is as follows:
osslogin [-d] [`<X.509 Name>']
The X.509 name for a client or server contains all of the standard and optional values that form the name within that entity's Identity: C=country, O=organization, OU=organization_unit, ST=state, L=locality, CN=user. For a global user, these values must appear in exactly the same order as they did when that user was "identified globally" to the database. (See the section "Defining Global Users and Global Roles to Oracle8 Servers," which appears earlier in this chapter.) The single quotes are required; osslogin will generate an error message if you do not provide them.
What the tool does depends on what form of the command you issue and what information exists in what location(s).
If you issue the command
osslogin -d `<X.509 Name>'
the tool will retrieve the given client or server wallet from the Oracle Security Server Repository, using the specified X.509 name, and then download the wallet to the location specified by the value of the oss.source.my_wallet parameter within the SQLNET.ORA file (see the section "Configuring Oracle Security Adapters on Clients and Servers," which appears earlier in this chapter).
Note: The certificate and encrypted private key contained within the wallet are protected only by the access control mechanisms provided by the client or server operating system. (The clear private key will not be generated in association with this form of the osslogin command.) |
CAUTION: You should delete your wallet when you are finished using it for a particular communications session. This will help protect its contents from unauthorized access. |
If you issue the command
osslogin `<X.509 Name>'
the tool will look for the given client or server wallet at the location specified by the value of oss.source.my_wallet.
If the wallet is not at that location, the tool will retrieve it from the Oracle Security Server Repository, using the specified X.509 name, and then download the wallet to the specified location.
Note: The certificate and encrypted private key contained within the wallet are protected only by the access control mechanisms provided by the client or server operating system. |
Once it has been established that the wallet is stored locally at the client or server, the tool will prompt you to enter the client or server password. The tool will generate the clear private key by using the password to decrypt the encrypted private key, and will then store the clear private key local to the client or server, at the location specified within the oss.source.my_wallet parameter.
WARNING: You must protect the clear private key carefully. The clear private key authenticates the client or server on the network. If unauthorized users were allowed to access the clear key file, they could masquerade as the client or server on the network and obtain the entity's privileged information. |
Note that you can add -f to this form of the command:
osslogin -f `<X.509 Name>'
to force the tool to go directly to the Oracle Security Server Repository in search of the client or server wallet. If you choose this option, the tool will prompt you for the X.509 name.
CAUTION: You should delete your wallet when you are finished using it for a particular communications session. This will help protect its contents from unauthorized access. |
If you issue the command
osslogin
the tool will look for the given client or server wallet at the location specified by the value of oss.source.my_wallet.
If the wallet is not at that location, the tool will prompt you to enter the elements of the X.509 name of the client or server. The tool will then use that name to retrieve the client or server wallet from the Oracle Security Server Repository, and then download the wallet to the specified location.
Note: The certificate and encrypted private key contained within the wallet are protected only by the access control mechanisms provided by the client or server operating system. |
Once the wallet is stored locally at the client or server, the tool will prompt you to enter the client or server password. The tool will generate the clear private key by using the password to decrypt the encrypted private key, and will then store the clear private key local to the client or server, at the location specified within the oss.source.my_wallet parameter.
WARNING: You must protect the clear private key carefully. The clear private key authenticates the client or server on the network. If unauthorized users were allowed to access the clear key file, they could masquerade as the client or server on the network and obtain the entity's privileged information. |
CAUTION: You should delete your wallet when you are finished using it for a particular communications session. This will help protect its contents from unauthorized access. |
A DBA should perform the following steps to remove the Oracle Security Server Repository from its Oracle database:
The Database Login Information Window appears in response.
A confirmation window appears in response. This window will ask you to confirm that you want to remove the Oracle Security Server Repository from the specified database.