Oracle® Health Sciences WebSDM and Empirica Study Installation Instructions Release 3.1.2.1 for Windows 2003/2008 Server E40537-03 |
|
![]() Previous |
![]() Next |
WebSDM creates a database account for each application and study that is registered. The accounts associated with studies own the tables that contain the clinical data comprising a study. These tables are created and populated during loading and checking runs. The accounts associated with applications are reserved for future use.
WebSDM assigns randomly generated passwords for these accounts. The passwords satisfy the following criteria:
The password is 16 characters long.
The password contains at least one lowercase alphabetic character.
The password contains at least one uppercase alphabetic character.
The password contains at least one number.
The password contains at least one nonalphanumeric character.
WebSDM does not support the expiration or resetting of the password for these accounts. If your site has installed a new version of WebSDM and your database is configured with a DEFAULT profile that imposes limits on the duration of passwords or that uses a password verifying function more restrictive than the criteria specified above, you must define an additional profile and use the WebSDM site options activity to associate that profile with the application and study accounts.
The following sample script creates a profile for the application and study accounts. You can modify the script to meet your company security policy requirements. Execute it while connected as the SYS user.
CREATE OR REPLACE FUNCTION verify_websdm_acct_pw (username varchar2, password varchar2, old_password varchar2) RETURN boolean IS n boolean; m integer; differ integer; isdigit boolean; ischar boolean; ispunct boolean; digitarray varchar2(20); punctarray varchar2(25); chararray varchar2(52); BEGIN digitarray:= '0123456789'; chararray:= 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; punctarray:='!"#$%&()``*+,-/:;<=>?_'; -- Check for the minimum length of the password IF length(password) < 16 THEN raise_application_error(-20002, 'Password length less than 16'); END IF; -- Check if the password contains at least one letter, one digit and one -- punctuation mark. -- 1. Check for the digit isdigit:=FALSE; m := length(password); FOR i IN 1..10 LOOP FOR j IN 1..m LOOP IF substr(password,j,1) = substr(digitarray,i,1) THEN isdigit:=TRUE; GOTO findchar; END IF; END LOOP; END LOOP; IF isdigit = FALSE THEN raise_application_error(-20003, 'Password should contain at least one digit, one character and one punctuation'); END IF; -- 2. Check for the character <<findchar>> ischar:=FALSE; FOR i IN 1..length(chararray) LOOP FOR j IN 1..m LOOP IF substr(password,j,1) = substr(chararray,i,1) THEN ischar:=TRUE; GOTO findpunct; END IF; END LOOP; END LOOP; IF ischar = FALSE THEN raise_application_error(-20003, 'Password should contain at least one digit, one character and one punctuation'); END IF; -- 3. Check for the punctuation <<findpunct>> ispunct:=FALSE; FOR i IN 1..length(punctarray) LOOP FOR j IN 1..m LOOP IF substr(password,j,1) = substr(punctarray,i,1) THEN ispunct:=TRUE; GOTO endsearch; END IF; END LOOP; END LOOP; IF ispunct = FALSE THEN raise_application_error(-20003, 'Password should contain at least one digit, one character and one punctuation'); END IF; <<endsearch>> -- Everything is fine; return TRUE ; RETURN(TRUE); END; / show errors; create profile WEBSDM_STUDIES_PROFILE limit COMPOSITE_LIMIT UNLIMITED SESSIONS_PER_USER UNLIMITED CPU_PER_SESSION UNLIMITED CPU_PER_CALL UNLIMITED LOGICAL_READS_PER_SESSION UNLIMITED LOGICAL_READS_PER_CALL UNLIMITED IDLE_TIME UNLIMITED CONNECT_TIME UNLIMITED PRIVATE_SGA UNLIMITED FAILED_LOGIN_ATTEMPTS 5 PASSWORD_LIFE_TIME UNLIMITED PASSWORD_REUSE_TIME UNLIMITED PASSWORD_REUSE_MAX UNLIMITED PASSWORD_LOCK_TIME UNLIMITED PASSWORD_GRACE_TIME UNLIMITED PASSWORD_VERIFY_FUNCTION verify_websdm_acct_pw
After creating a profile, use Settings > Set Site Options in WebSDM to associate it with application and study accounts. Use the control labeled Profile for new Accounts in the Database Accounts and File System Structure section to select it.
For more information, see the Oracle Database Security Guide, 10g Release 2, Chapter 7 Security Policies, Section Password Complexity Verification, or Oracle Database Security Guide, 11g Release 2, Chapter 3, Configuring Authentication, Section Customizing Password Complexity Verification.