Cómo colocar la información de seguridad en un archivo máster central

En esta sección:

Cómo:

El atributo DBAFILE permite colocar en un archivo central todas las contraseñas y restricciones de varios archivos máster. Cada archivo máster individual apunta hacia este archivo de control central. Los grupos de archivos máster que tengan la misma contraseña, pueden compartir un DBAFILE común que, a su vez, tiene la misma contraseña de DBA.

Esta técnica tiene varias ventajas, incluyendo:

El DBAFILE central es un archivo máster estándar. La contraseña y las restricciones de seguridad listadas en el archivo central también pueden ser utilizadas por otros archivos máster, especificando su nombre con el atributo de DBAFILE.

Nota:


Principio de página

x
Sintaxis: Cómo Colocar los atributos de seguridad en un archivo máster central
END
DBA=dbaname, DBAFILE=filename ,$

donde:

dbaname

Es el mismo que el dbaname del archivo central.

filename

Es el nombre del archivo central.

Puede especificar contraseñas y restricciones en un DBAFILE, que se apliquen a todos los archivos máster que apunten hacia este DBAFILE. Además, puede incluir contraseñas y restricciones para archivos máster específicos, mediante la inclusión de atributos FILENAME en DBAFILE.



Ejemplo: Cómo colocar los atributos de seguridad en un archivo máster central

El siguiente ejemplo muestra un grupo de archivos máster que comparten un DBAFILE común, llamado FOUR:

ONE MASTER
FILENAME=ONE
  .
  .
END
DBA=ABC, DBAFILE=FOUR,$
TWO MASTER
FILENAME=TWO
  .
  .
END
DBA=ABC, DBAFILE=FOUR,$
THREE MASTER
FILENAME=THREE
  .
  .
END
DBA=ABC,
DBAFILE=FOUR,$
FOUR MASTER
FILENAME=FOUR,$
SEGNAME=mmmmm,$
FIELDNAME=fffff,$
END
DBA=ABC,$
   PASS=BILL,ACCESS=R,$
   PASS=JOE,ACCESS=R,$
FILENAME=TWO,$
   PASS=HARRY,ACCESS=RW,$
FILENAME=THREE,$
   PASS=JOE,ACCESS=R,RESTRICT=...,$
   PASS=TOM,ACCESS=R,$


Ejemplo: Cómo usar DBAFILE con una estructura JOIN

La siguiente solicitud une el origen de datos TRAINING a los orígenes de datos EMPDATA y COURSE y, a continuación, emite una solicitud basada en la estructura unida:

JOIN CLEAR *                                             
JOIN COURSECODE IN TRAINING TO COURSECODE IN COURSE AS J1
JOIN PIN IN TRAINING TO PIN IN EMPDATA AS J2             
                                                         
TABLE FILE TRAINING                                      
PRINT COURSECODE AS 'CODE' CTITLE    
   LOCATION AS 'LOC'                                     
BY LASTNAME                                 
WHERE COURSECODE NE '   '                                
WHERE LOCATION EQ 'CA' OR LOCATION LIKE 'N%'             
END                                                      

Cuando los archivos máster no tienen atributos de DBA la salida es:

LASTNAME         CODE     CTITLE                               LOC
--------         ----     ------                               ---
ADAMS            EDP750   STRATEGIC MARKETING PLANNING         NJ 
CASTALANETTA     EDP130   STRUCTURED SYS ANALYSIS WKSHP        NY 
                 AMA130   HOW TO WRITE USERS MANUAL            CA 
CHISOLM          EDP690   APPLIED METHODS IN MKTG RESEARCH     NJ 
FERNSTEIN        MC90     MANAGING DISTRIBUTOR SALE NETWORK    NY 
GORDON           SFC280   FUND OF ACCTG FOR SECRETARIES        NY 
LASTRA           MC90     MANAGING DISTRIBUTOR SALE NETWORK    NY 
MARTIN           EDP130   STRUCTURED SYS ANALYSIS WKSHP        CA 
MEDINA           EDP690   APPLIED METHODS IN MKTG RESEARCH     NJ 
OLSON            PU168    FUNDAMNETALS OF MKTG COMMUNICATIONS  NY 
RUSSO            PU168    FUNDAMNETALS OF MKTG COMMUNICATIONS  NY 
SO               BIT420   EXECUTIVE COMMUNICATION              CA 
WANG             PU440    GAINING COMPETITIVE ADVANTAGE        NY 
WHITE            BIT420   EXECUTIVE COMMUNICATION              CA 

El archivo máster EMPDATE será el DBAFILE central de la solicitud. Ahora añada los siguientes atributos de DBA al final del archivo máster EMPDATA:

END                       
DBA=DBA1,$                
USER = EUSER, ACCESS = R,$
FILENAME = COURSE         
USER = CUSER2, ACCESS=RW,$

Con estos atributos DBA, el usuario EUSER tendrá acceso de lectura a todos los archivos que utilizan EMPDATA como su DBAFILE. El usuario CUSER2 tendrá acceso de lectura y escritura al origen de datos COURSE.

Añada los siguientes atributos de seguridad de al final del archivo máster COURSE. Estos atributos convierten al archivo máster EMPDATA en el archivo central, que contiene todos los atributos de seguridad utilizados para acceder al origen de datos COURSE y establece el atributo DBA en el mismo valor que el atributo DBA del archivo máster EMPDATA:

END                         
DBA = DBA1, DBAFILE=EMPDATA,$
 

Añada los siguientes atributos de seguridad de al final del archivo máster TRAINING. Estos atributos convierten al archivo máster EMPDATA en el archivo central, que contiene los atributos de seguridad utilizados para acceder al origen de datos TRAINING y establece el atributo DBA en el mismo valor que el atributo DBA del archivo máster EMPDATA:

END                         
DBA = DBA1, DBAFILE=EMPDATA,$
 

Ahora, para poder ejecutar una solicitud basada en la estructura JOIN, debe haber una contraseña de usuario actual con un acceso de lectura activo en cada archivo de JOIN. Emita el siguiente comando SET PASS y ejecute la solicitud:

SET PASS = EUSER

o

SET PASS = EUSER IN *

La solicitud se ejecuta y la salida se produce puesto que EUSER es un usuario válido en cada archivo del join.

Puesto que el archivo máster EMPDATA identifica a CUSER2 como un usuario válido del archivo máster COURSE, también puede ejecutar la solicitud con el siguiente comando SET PASS:

SET USER = EUSER IN EMPDATA, EUSER IN TRAINING, CUSER2 IN COURSE

La emisión de un comando SET PASS, que no especifique una contraseña válida para cada archivo de la estructura JOIN, resulta en uno de estos mensajes; la solicitud no se ejecuta:

(FOC052) THE USER DOES NOT HAVE ACCESS TO THE FIELD: fieldname 
(FOC047) THE USER DOES NOT HAVE SUFFICIENT ACCESS RIGHTS TO THE FILE: filename                                                              

Principio de página

x
Requisitos de nomenclatura para DBAFILE

Cuando un DBAFILE incluye un atributo FILENAME para un archivo máster específico, el atributo FILENAME del archivo máster que incluye la referencia, debe ser el mismo que el del atributo FILENAME de la sección DBA del DBAFILE. Esto impide que los usuarios cambien el nombre del archivo máster por uno desconocido para el DBAFILE.



Ejemplo: Convenciones de nomenclatura de DBAFILE
ONE MASTER
FILENAME=XONE
  .
  .
  .
END
DBA=ABC, DBAFILE=FOUR,$
 
 
FOUR MASTER
FILENAME=XFOUR
  .
  .
  .
END
DBA=ABC,$
  .
  .
  .
FILENAME=XONE,$
  .
  .
  .

ONEMASTER aparece citado en las solicitudes como TABLE ONE FILE. Sin embargo, ONE MASTERy la sección DBA del DBAFILE, FOUR MASTER, especifican FILENAME=XONE.

Por motivos de seguridad, el atributo FILENAME del archivo máster que contiene la información de DBAFILE ,no debe ser el mismo que el nombre de ese archivo máster. Tenga en cuenta que, en el archivo máster FOUR, el atributo de FILENAME especifica el nombre XFOUR.


Principio de página

x
Conexión a un sistema de DBA existente con DBAFILE

Si no se hace mención al nuevo atributo, DBAFILE, no se produce ningún cambio en las características de un sistema existente. En el sistema actual, cuando una serie de orígenes de datos se han estructurado en un JOIN, el primero de la lista es el de control. Sólo se examinan las contraseñas de éste. En los COMBINE, sólo tienen efecto las contraseñas del último origen de datos. Todos los orígenes de datos deben tener la misma contraseña.

En el sistema nuevo se examinan las secciones de DBA de todos los orígenes de datos del JOIN o COMBINE. Si DBAFILE forma parte de un archivo máster, se leen sus contraseñas y restricciones. Para activar la sección DBA de un origen de datos en una lista JOIN o en un COMBINE, especifique DBAFILE para ese origen.

Después de empezar a usar el sistema nuevo, convierta todos sus archivos máster. Los administradores de bases de datos que quieran convertir sistemas existentes sin un DBA físico, independiente, pueden utilizar el atributo DBAFILE para especificar el propio origen de datos.



Ejemplo: Cómo conectarse a un sistema de DBA existente con DBAFILE
FILENAME=SEVEN,
  SEGNAME=..
    FIELDNAME=...
     .
     .
     .
END
DBA=ABC,DBAFILE=SEVEN,$    (OR DBAFILE= ,$)
 PASS=...
 PASS=...

Principio de página

x
Cómo combinar aplicaciones con DBAFILE

Puesto que, ahora, cada origen de datos contribuye sus propias restricciones, puede estructurar los orígenes de datos en JOINs o COMBINEs, pertenecientes a aplicaciones diferentes y cuyas contraseñas son distintas. El único requisito es que cada origen de datos tenga una contraseña válida. Por tanto, puede conceder los derechos de acceso a una aplicación a otra bajo el control de un DBA diferente, mediante la asignación de una contraseña en su sistema.

Puede asignar condiciones de filtrado a un origen de datos, que se apliquen automáticamente a cualquier solicitud de informe que acceda al origen. Consulte el manual Cómo crear informes con el lenguaje WebFOCUS para más detalles.


WebFOCUS