For a CORBA application to authenticate users, the value of the AUTHSVC parameter in the 
RESOURCES section of the 
UBBCONFIG file needs to specify the name of the process to be used as the authentication server for the CORBA application. The service must be called 
AUTHSVC. If the 
AUTHSVC parameter is specified in the
 RESOURCES section of the 
UBBCONFIG file, the 
SECURITY parameter must also be specified with a value of at least 
USER_AUTH. If the value is not specified, an error will occur when the system executes the 
tmloadcf command. If the 
-m option is configured on the 
ISL process in the 
UBBCONFIG file, the 
AUTHSVC must be defined in the 
UBBCONFIG file before the 
ISL process.
 
      In addition, you need to define AUTHSVR in the 
SERVERS section of the 
UBBCONFIG file. The 
SERVERS section contains information about the server processes to be booted in the CORBA application. To add 
AUTHSVC to an application, you need to define 
AUTHSVC as the authentication service and 
AUTHSVR as the authentication server in the 
UBBCONFIG file. 
Listing 7‑1 contains the portion of the 
UBBCONFIG file that defines the authentication server.
 
      
      
      
      *SERVERS
AUTHSVR SRVGRP="group_name" SRVID=1 RESTART=Y GRACE=600 MAXGEN=2 CLOPT="-A"
 
      
      AUTHSVR may be replaced with an authentication server that implements logic specific to the application. For example, a company may want to develop a custom authentication server so that it can use the popular Kerberos mechanism for authentication.
 
      
      
      *SERVERS
KERBEROSSVR SRVGRP="group_name" SRVID=1 RESTART=Y GRACE=600 MAXGEN=2 CLOPT="-A"
 
      
      
      
      
      
      
      You use the tpusradd command to create files containing lists of authorized principals. The
 tpusradd command adds a new principal entry to the Oracle Tuxedo security data files. This information is used by the authentication server to authenticate principals. The file that contains the principals is called 
tpusr. 
      
      The tpusradd file should be owned by the administrator account. Oracle recommends that the file be protected so that only the owner has read and write privileges for the file and all other users have only read privileges for the file.
 
      The tpusradd command has the following options:
 
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
        
          
            | 
               
                Note:	
               
             | 
            
              Use the tpgrpadd command to add groups of principals to the Oracle Tuxedo security data files.  
             | 
          
        
       
      In addition to the tpusradd and 
tpgrpadd commands, the Oracle Tuxedo product provides the following commands to modify the 
tpusr and 
tpgrp files:
 
      
      
      
      
      
      
      
      
        
          
            | 
               2.	 
             | 
            
              To convert the /etc/password file into the format needed by the Oracle Tuxedo system, enter the following command:  
             | 
          
        
       
      
      This command creates the tpusr file and stores the converted data in it. If the 
tpusr file already exists, 
tpaclcvt adds the converted data to the file, but it does 
not add duplicate user information to the file.
 
      
      
        
          
            | 
               3.	 
             | 
            
              To convert the /etc/group file into the format needed by the Oracle Tuxedo system, enter the following command:  
             | 
          
        
       
      
      This command creates the tpgrp file and stores the converted data in it. If the 
tpgrp file already exists, 
tpaclcvt adds the converted data to the file, but it does 
not add duplicate group information to the file.
 
      
      
      
      Table 7‑1 describes the values for the 
SECURITY parameter.
 
      
      
      
      
      
      
      
        
          
            | 
               2.	 
             | 
            
              Set the SECURITY parameter in the  RESOURCES section of the  UBBCONFIG file to  APP_PW.  
             | 
          
        
       
      
      
      
      
      
      
      
      
      
        
          
            | 
               3.	 
             | 
            
              Open UBBCONFIG with a text editor and add the following lines to the  RESOURCES and  SERVERS sections:  
             | 
          
        
       
      
      
      CLOPT="-A" causes the 
tmboot command to pass only the default command-line options (invoked by 
"-A") to 
AUTHSVR when the 
tmboot command starts the application.
 
      
      
      
      
      Listing 7‑3 includes a 
UBBCONFIG file for an application which uses password authentication. The key sections of the 
UBBCONFIG file are noted in boldface text. 
 
      
      *RESOURCES
    IPCKEY    55432
    DOMAINID  securapp
    MASTER    SITE1
    MODEL     SHM
    LDBAL     N
    SECURITY  USER_AUTH     AUTHSVR “AUTHSVC”
*MACHINES
    "ICEAXE"
    LMID        = SITE1
    APPDIR      = "D:\TUXDIR\samples\corba\SECURAPP"
    TUXCONFIG   = "D:\TUXDIR\samples\corba\SECURAPP\results
                     \tuxconfig"
    TUXDIR      = "D:\Tux8"
    MAXWSCLIENTS = 10
*GROUPS
    SYS_GRP
       LMID    = SITE1
       GRPNO   = 1
    APP_GRP
       LMID    = SITE1
       GRPNO   = 2
*SERVERS
    DEFAULT:
    RESTART = Y 
    MAXGEN  = 5    
AUTHSVR 
        SRVGRP  = SYS_GRP
        SRVID   = 1
        RESTART = Y
        GRACE   = 60
        MAXGEN   = 2
    TMSYSEVT
        SRVGRP  = SYS_GRP
        SRVID   = 1
    TMFFNAME
        SRVGRP  = SYS_GRP
        SRVID   = 2
        CLOPT   = "-A -- -N -M"
    TMFFNAME
        SRVGRP  = SYS_GRP
        SRVID   = 3
        CLOPT   = "-A -- -N"
    TMFFNAME
        SRVGRP  = SYS_GRP
        SRVID   = 4
        CLOPT   = "-A -- -F"
    simple_server
        SRVGRP  = APP_GRP
        SRVID   = 1
        RESTART = N
    ISL
        SRVGRP  = SYS_GRP
        SRVID   = 5
        CLOPT    = “-A -- -n //PCWIZ::2500”        
SEC_PRINCIPAL_NAME="IIOPListener"
        SEC_PRINCIPAL_PASSVAR="ISH_PASS"       
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
        
          
            | 
               8.	 
             | 
            
              Use the tpusradd command to define the authorized users of your CORBA application and IIOP Listener/Handler. Use the e-mail addresss of the user in the  tpusr file. For more information about the  tpusr file, see  “Defining Authorized Users” on page 7‑3. Use the phase phrase you defined in  SEC_PRINCIPAL_PASSVAR as the password for the IIOP Listener/Handler.  
             | 
          
        
       
      
      
      
      
        
          
            | 
               12.	 
             | 
            
              Open UBBCONFIG with a text editor and add the following lines to the  RESOURCES and  SERVERS sections:  
             | 
          
        
       
      
      
      
      
      
      
        
          
            | 
               • 
             | 
            
              Use the -a option of the ISL command to specify that certificate authentication must be used by applications connecting to the IIOP Listener/Handler.  
             | 
          
        
       
      
        
          
            | 
               • 
             | 
            
              Use the -ORBmutualAuth command-line option on the ORB to specify that certificate authentication must be used by applications connecting to the CORBA C++ ORB.  
             | 
          
        
       
      
      
      Listing 7‑4 includes a 
UBBCONFIG file for a CORBA application which uses certificate authentication. The key sections of the 
UBBCONFIG file are noted in boldface text. 
 
      
      *RESOURCES
    IPCKEY    55432
    DOMAINID  simpapp
    MASTER    SITE1
    MODEL     SHM
    LDBAL     N
    SECURITY  USER_AUTH
    AUTHSVR “AUTHSVC”
*MACHINES
    "ICEAXE"
    LMID        = SITE1
    APPDIR      = "D:\TUXDIR\samples\corba\SIMPAP~1"
    TUXCONFIG   = "D:\TUXDIR\samples\corba\SIMPAP~1
                 \results\tuxconfig"
    TUXDIR      = "D:\TUX8"
    MAXWSCLIENTS = 10
*GROUPS                                
    SYS_GRP 
       LMID    = SITE1
       GRPNO   = 1
    APP_GRP
       LMID    = SITE1
       GRPNO   = 2 
*SERVERS
    DEFAULT:
    RESTART = Y
    MAXGEN  = 5    
AUTHSVR 
        SRVGRP  = SYS_GRP
        SRVID   = 1
        RESTART = Y
        GRACE   = 60
        MAXGEN   = 2
TMSYSEVT
        SRVGRP  = SYS_GRP
        SRVID   = 1
    TMFFNAME 
        SRVGRP  = SYS_GRP
        SRVID   = 2
        CLOPT   = "-A -- -N -M"
    TMFFNAME
        SRVGRP  = SYS_GRP
        SRVID   = 3
        CLOPT   = "-A -- -N"
    TMFFNAME
        SRVGRP  = SYS_GRP
        SRVID   = 4
        CLOPT   = "-A -- -F"
    simple_server 
        SRVGRP  = APP_GRP
        SRVID   = 1
        RESTART = N
    ISL
        SRVGRP  = SYS_GRP
        SRVID   = 5        
CLOPT   = "-A -- -a -z40 -Z128 -S2458 -n //ICEAXE:2468" 
        SEC_PRINCIPAL_NAME="IIOPListener"
        SEC_PRINCIPAL_LOCATION="IIOPListener.pem"
        SEC_PRINCIPAL_PASSVAR="ISH_PASS"       
      
      
      
      
      
      
      
      
      
        
          
            | 
               • 
             | 
            
              tpusr contains a list of users  
             | 
          
        
       
      
        
          
            | 
               • 
             | 
            
              tpgrp contains a list of groups  
             | 
          
        
       
      
        
          
            | 
               • 
             | 
            
              tpacl contains a list of ACLs  
             | 
          
        
       
      
      
      
        
          
            | 
               • 
             | 
            
              In ACL mode, a service request will be allowed if there is not a specific ACL.  
             | 
          
        
       
      
        
          
            | 
               • 
             | 
            
              In MANDATORY_ACL mode, the service request is denied if there is not a specific ACL.  
             | 
          
        
       
      
      
      
      
        
          
            | 
               2.	 
             | 
            
              Open UBBCONFIG with a text editor and add the following lines to the  RESOURCES and  SERVERS sections:  
             | 
          
        
       
      
      
      CLOPT="-A" causes the 
tmboot command to pass only the default command-line options (invoked by 
"-A") to 
AUTHSVR when the 
tmboot command starts the application. By default, 
AUTHSVR uses the user information in the 
tpusr file to authenticate clients that want to interact with the CORBA application.
 
      
      
      
      
      
      
      
      
        
          
            | 
               2.	 
             | 
            
              Open UBBCONFIG with a text editor and add the following lines to the  RESOURCES and  SERVERS sections:  
             | 
          
        
       
      
      
      CLOPT="-A" causes the 
tmboot command to pass only the default command-line options (invoked by 
"-A") to 
AUTHSVR when the 
tmboot command starts the application. By default, 
AUTHSVR uses the client user information in the 
tpusr  file named to authenticate clients that want to join the application. The 
tpusr file resides in the directory referenced by the first pathname defined in the application’s 
APPDIR variable.
 
      
      
      
      
      
      
      
        
          | 
            
           | 
          
            
           | 
          
            
           | 
        
        
          
            ACL_POLICY in  DMCONFIG ( TA_DMACLPOLICY in  DM_MIB)  
           | 
          
            May appear in the DM_REMOTE_DOMAINS section of the  DMCONFIG file for each remote domain access point. Its value for a particular remote domain access point determines whether or not the local domain gateway modifies the identity of service requests received from the remote domain.*  
           | 
          
            LOCAL or  GLOBAL. Default is  LOCAL.  
            LOCAL means modify the identity of service requests, and  GLOBAL means pass service requests with no change.  DOMAINID string for the remote domain access point.  
           | 
        
        
          
             * A remote domain access point is also known as an  RDOM (pronounced “are dom”) or simply  remote domain.  
           | 
        
      
      
      
        
          
            | 
               • 
             | 
            
              When using a local ACL policy, each domain gateway (GWTDOMAIN) modifies inbound CORBA client requests (requests originating from the remote application and received over the network connection) so that they take on the  DOMAINID for the remote domain access point and thus have the same access permissions as that identity. Each domain gateway passes outbound client requests without change.  
             | 
          
        
       
      
      
        
          
            | 
               • 
             | 
            
              When using a global ACL policy, each domain gateway (GWTDOMAIN) passes inbound and outbound CORBA client requests without change. In this configuration, each application has an ACL database containing entries for users in its own domain  as well as users in the remote domain.  
             | 
          
        
       
      
      
      
      In Listing 7‑5, the connection through the remote domain access point 
b01 is configured for global ACL in the local 
DMCONFIG file, meaning that the domain gateway process for domain access point 
c01 passes client requests 
from and 
to domain access point 
b01 without change.
 
      
      *DM_LOCAL_DOMAINS
# <LDOM name> <Gateway Group name> <domain type> <domain id> 
#      [<connection principal name>] [<security>]...
c01    GWGRP=bankg1
       TYPE=TDOMAIN
       DOMAINID="BA.CENTRAL01"
       CONN_PRINCIPAL_NAME="BA.CENTRAL01"
       SECURITY=DM_PW
   .
   .
   .
*DM_REMOTE_DOMAINS
# <RDOM name> <domain type> <domain id> [<ACL policy>] 
#      [<connection principal name>] [<local principal name>]...
b01    TYPE=TDOMAIN
       DOMAINID="BA.BANK01"
       ACL_POLICY=GLOBAL
       CONN_PRINCIPAL_NAME="BA.BANK01"
 
      
      
      
      By setting the CLOPT -t option  or specifying the -
ORBinterOP command-line option, you are lowering the effective level of security for a CORBA server. Therefore, the use of compatibility mode should be carefully considered before enabling the mode in a server application.
 
      You need to set the CLOPT -t option on any server applications that will interoperate with the older client application. The 
CLOPT -t option is specified in the 
*SERVERS section of 
Listing 7‑6.
 
      
      *SERVERS
SecureSrv     SRVGRP=group_name SRVID=
server_number
              CLOPT=A -t..