fine-grained access control in banner 7 · fgac and banner personally identifiable information...

40
www.skybridgeglobal.com SkyBridge Global, Inc. Connecting your business with technology © 2004 SkyBridge Global, Inc. All rights reserved. Proprietary and Confidential. Fine Fine - - Grained Access Control in Banner 7 Grained Access Control in Banner 7 Presenters: Presenters: Shelly Wingfield Shelly Wingfield SkyBridge Global SkyBridge Global Amanda Marshall Amanda Marshall Board of Regents Board of Regents

Upload: others

Post on 26-Sep-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

www.skybridgeglobal.com

SkyBridge Global, Inc.

Connecting your business with technology

© 2004 SkyBridge Global, Inc. All rights reserved. Proprietary and Confidential.

FineFine--Grained Access Control in Banner 7Grained Access Control in Banner 7

Presenters: Presenters: Shelly Wingfield Shelly Wingfield SkyBridge GlobalSkyBridge GlobalAmanda MarshallAmanda Marshall Board of RegentsBoard of Regents

Page 2: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

2

SKYBRIDGE GLOBAL

Agenda

IntroductionIntroductionGlossaryGlossary

FineFine--Grained Access Control (FGAC)Grained Access Control (FGAC)Related terms and concepts Related terms and concepts

FGAC in Banner 7FGAC in Banner 7ValueValue--Based Security (VBS)Based Security (VBS)Personally Identifiable Information (PII)Personally Identifiable Information (PII)

Page 3: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

3

SKYBRIDGE GLOBAL

GlossaryGlossary

FineFine--Grained Access Control (FGAC)Grained Access Control (FGAC)– An ORACLE feature new in release 8i– Used to provide row-level security (RLS)– Once security policies and functions are created and applied,

the database server automatically enforces these security policies, no matter how the data is accessed

– VBS and PII are applications of the FGAC feature– PII and VBS to not require each other, you can implement

together or separately– SCT Banner’s FGAC features require a minimum release of

General 7.0 and are designed to function with Oracle 9.2i

GlossaryGlossary

Page 4: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

4

SKYBRIDGE GLOBAL

GlossaryGlossary

DomainDomain– A functional area or functional set of information in Banner

such as Course Catalog, Schedule, Admissions, Test Scores, etc.

– There are two types – one for VBS and one for PII

Domain DriverDomain Driver– The table that is designated as the driver for the business

logic associated with a VBS or PII domain. – Usually the parent table of a module

Page 5: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

5

SKYBRIDGE GLOBAL

GlossaryGlossary

Predicate Predicate – SQL clause for a domain and group that defines the

access restriction

Policy Policy – Oracle object on a table that makes FGAC work – Must create policy before PII and VBS will work– Policy created by process the DBA runs after users

define domain and its tables– One policy per table in the GOKFGAC FGAC

schema

Page 6: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

6

SKYBRIDGE GLOBAL

GlossaryGlossary

Business ProfileBusiness Profile– Group of users that have the same access

restrictions– Reduces data entry of access restrictions– Different than BANSECR roles. Maintenance of

Business Profiles is distributed and moved out of BANSECR schema.

CRUD– An acronym for the four types of operations that can

be performed on data: Create, Retrieve, Update, and Delete functions.

Page 7: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

7

SKYBRIDGE GLOBAL

How does FGAC work?How does FGAC work?

Insert into saradap(saradap_pidm, …..)

Values (1234, …..)

1. User inserts into saradap2. FGAC executes GOKFGAC predicate function and retrieves predicate

(new)saradap_coll_code = ‘AS’and (new)saradap_resd_code = ‘M’

4. Row inserted or oracle error message displayed

3. FGAC Appends Predicate to SQL statement

Page 8: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

8

SKYBRIDGE GLOBAL

FGAC and BannerFGAC and Banner

ValueValue--Based Security (VBS)Based Security (VBS)– Coded and applied as needed to individual users– Uses the FGAC feature to apply business rules

defined by your institution– For Example, you can apply VBS rules to users in

one department so that they can only see student records relevant to that department

Page 9: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

9

SKYBRIDGE GLOBAL

FGAC in BannerFGAC in Banner

These steps make up the VBS creation process.These steps make up the VBS creation process. Perform analysis on where the VBS restriction should reside. Define the domain, which is the driver table for the VBS

restrictions. Define all tables that are members of the domain and will be

restricted by the VBS rule. Have the DBA create ORACLE policies on tables. Identify the users who need to be restricted by the VBS rule. Create the business profile and add restricted users to the

business profile. Create the VBS rule for the domain Assign the business profile.

Page 10: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

10

SKYBRIDGE GLOBAL

Define New DomainDefine New Domain

GTVFDMN GTVFDMN -- Domain Code Validation Domain Code Validation Preface each domain with the product abbreviation Preface each domain with the product abbreviation

G(eneralG(eneral), ), S(tudentS(tudent), etc), etc……and and B(annerB(anner), followed by the ), followed by the entity name and VBS. Example: SB_CONTACT_VBSentity name and VBS. Example: SB_CONTACT_VBS

Page 11: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

11

SKYBRIDGE GLOBAL

Assign Driver TableAssign Driver Table

GORFDMN GORFDMN -- Domain Driver Rules; assigns driver table to Domain Driver Rules; assigns driver table to Domain Domain

Page 12: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

12

SKYBRIDGE GLOBAL

Define Tables and Joins in DomainDefine Tables and Joins in Domain

GORFDPL GORFDPL -- VBS Table Rules FormVBS Table Rules Form Assign other tables and joins to Domain Assign other tables and joins to Domain

Page 13: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

13

SKYBRIDGE GLOBAL

Create Policy in OracleCreate Policy in Oracle

Run: @Run: @gen$exe:gfvbsaddpolgen$exe:gfvbsaddpol and/or and/or gfgacdroppolgfgacdroppol as as BANINST1BANINST1 Create policy on all tables defined in domain. Create policy on all tables defined in domain.

– Will accept wildcards in the table name

To view policy data from To view policy data from SQLPlusSQLPlus–– select * from select * from dba_policiesdba_policies wherewhere object_name = driver_table;

Page 14: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

14

SKYBRIDGE GLOBAL

FGAC in BannerFGAC in Banner

These steps make up the VBS creation process. Perform analysis on where the VBS restriction should reside. Define the domain, which is the driver table for the VBS

restrictions. Define all tables that are members of the domain and will be

restricted by the VBS rule. Have the DBA create ORACLE policies on tables. Identify the users who need to be restricted by the VBS rule. Create the business profile and add restricted users to the

business profile. Create the VBS rules for the domain Assign the business profile.

Page 15: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

15

SKYBRIDGE GLOBAL

Create New Group CodeCreate New Group Code

GTVFGAC GTVFGAC -- Group Code Validation: establish a new group Group Code Validation: establish a new group code (Recommend ending group code with _GRP)code (Recommend ending group code with _GRP)

Page 16: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

16

SKYBRIDGE GLOBAL

Create Business Profiles and Assign UsersCreate Business Profiles and Assign Users

GTVFBPR GTVFBPR -- Business Profile Validation: create business Business Profile Validation: create business profile based on line of business or functions (Recommend profile based on line of business or functions (Recommend ending profile code with _PRF)ending profile code with _PRF) GOAFBPR GOAFBPR -- Business Profile Assignments Form: assign Business Profile Assignments Form: assign

users to profiles createdusers to profiles created

Page 17: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

17

SKYBRIDGE GLOBAL

Create Rule for Each GroupCreate Rule for Each Group

Page 18: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

18

SKYBRIDGE GLOBAL

Define Access to PredicateDefine Access to Predicate

Page 19: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

19

SKYBRIDGE GLOBAL

FGAC Predicate InquiryFGAC Predicate Inquiry

Page 20: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

20

SKYBRIDGE GLOBAL

Be AwareBe Aware

Must exit and reenter Banner after saving to Must exit and reenter Banner after saving to enable new VBS enable new VBS Can not modify policies. Can not modify policies.

– Must delete (run gfgacdroppol.sql) and recreate (run gfvbsaddpol)

Oracle Error 28113 refers to VBS predicate syntax Oracle Error 28113 refers to VBS predicate syntax errorerror User GOIFGAC and GOVFGAC (view) to report on User GOIFGAC and GOVFGAC (view) to report on

VBS structureVBS structure Functions in predicate clauses can slow Functions in predicate clauses can slow

performance, especially if predicate is against a performance, especially if predicate is against a big tablebig table

Page 21: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

21

SKYBRIDGE GLOBAL

Be AwareBe Aware

Parameter _DYN_RLS_POLICIES must be set to Parameter _DYN_RLS_POLICIES must be set to TRUE in TRUE in init.orainit.ora if using VBS FGAC in Bannerif using VBS FGAC in Banner FGAC is turned off for all Banner jobs/processes FGAC is turned off for all Banner jobs/processes

excluding GLBDATA. excluding GLBDATA. – Use Gokfgac.p_turn_fgac_off and Gokfgac.p_turn_fgac_on

to turn off and back on FGAC on custom jobs/processes– Any object can be made exempt by inserting it on the FGAC

Excluded Objects Form (GORFEOB)

Page 22: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

22

SKYBRIDGE GLOBAL

FGAC and BannerFGAC and Banner

Personally Identifiable Information (PII) Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records

in their processing area (you can only view PII for Student Applicants if you work in Admissions)

– PII is implemented system-wide. All users of the system are restricted by PII except when specifically exempted.

– PII restrictions are PIDM based and only on one or two tables in the database. The purpose of PII is to restrict access to records based on the existence of data in key locations.

Page 23: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

23

SKYBRIDGE GLOBAL

FGAC in BannerFGAC in Banner

Define PII domain User assignmentsDefine PII domain User assignments– PII Domains define where the PIDM must exist for

the User to have access. – Use Business Profiles to minimize data entry

Assigning PII domains has to be done for Assigning PII domains has to be done for all users of the systemall users of the systemExempt system type users, and those used Exempt system type users, and those used

for student self servicefor student self serviceWork with DBA to create Oracle policy Work with DBA to create Oracle policy

Page 24: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

24

SKYBRIDGE GLOBAL

FGAC in BannerFGAC in Banner

These steps make up the VBS creation process.These steps make up the VBS creation process.– Define & enable PII domains– Define PII tables– Have DBA Create policy on PII table and turn PII on– Define Business Profiles and PII assignments – Set up individual user’s exempt, cross domain

search status. Repeat until all users of the system are entered.

– Check the active indicator on the entry in GORFDPI to activate PII.

Page 25: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

25

SKYBRIDGE GLOBAL

Define PII DomainDefine PII Domain

GTVFDMN GTVFDMN –– PII Domain Code Validation PII Domain Code Validation Preface each domain with the product abbreviation Preface each domain with the product abbreviation

G(eneralG(eneral), ), S(tudentS(tudent), etc), etc……and and B(annerB(anner), followed by the ), followed by the entity name and PII. Example: SB_OUTCOME_PIIentity name and PII. Example: SB_OUTCOME_PII

Page 26: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

26

SKYBRIDGE GLOBAL

Enable PII DomainEnable PII Domain

Enable PII Domain in GORFDMNEnable PII Domain in GORFDMN

Page 27: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

27

SKYBRIDGE GLOBAL

Define Tables in the PII DomainDefine Tables in the PII Domain

Enter the PII tables in GORFDPI Enter the PII tables in GORFDPI – PII function delivered: GOKFGAC.F_FIND_PII_DOMAIN.

Page 28: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

28

SKYBRIDGE GLOBAL

Create PoliciesCreate Policies

Execute the BANINST1 db trigger GOTVBSI0.SQL Execute the BANINST1 db trigger GOTVBSI0.SQL to turn PII onto turn PII on Run: @Run: @gen$exe:gfvbsaddpolgen$exe:gfvbsaddpol and/or and/or gfgacdroppolgfgacdroppol

as BANINST1as BANINST1

Page 29: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

29

SKYBRIDGE GLOBAL

FGAC in BannerFGAC in Banner

These steps make up the VBS creation process.These steps make up the VBS creation process.– Define & enable PII domains– Define PII tables– Have DBA Create policy on PII table and turn PII on– Define Business Profiles and PII assignments – Set up individual user’s exempt, cross domain

search status. Repeat until all users of the system are entered.

– Check the active indicator on the entry in GORFDPI to activate PII.

Page 30: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

30

SKYBRIDGE GLOBAL

Assigning PII domains Assigning PII domains

GOAFPUD GOAFPUD –– Assign PII domain to users individuallyAssign PII domain to users individually

Page 31: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

31

SKYBRIDGE GLOBAL

Business Profiles for PIIBusiness Profiles for PII

GTVFBPR, GOAFBPR GTVFBPR, GOAFBPR –– Define PII Business ProfilesDefine PII Business Profiles

Page 32: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

32

SKYBRIDGE GLOBAL

Assigning PII domains Assigning PII domains

GOAFPUD GOAFPUD –– Assign PII domain to users by Business ProfileAssign PII domain to users by Business Profile

Page 33: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

33

SKYBRIDGE GLOBAL

Turning GOKFGAC FGAC off for processesTurning GOKFGAC FGAC off for processes

New page to identify objects that are excluded New page to identify objects that are excluded from GOKFGAC FGAC processing from GOKFGAC FGAC processing – Prevent data corruption

All JOBS defined in GUBOBJS are delivered as All JOBS defined in GUBOBJS are delivered as ‘‘exemptexempt’’. . Exemptions includes PII and VBS Exemptions includes PII and VBS Option not available on the Self Service yetOption not available on the Self Service yet

Page 34: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

34

SKYBRIDGE GLOBAL

Turning GOKFGAC FGAC off for processesTurning GOKFGAC FGAC off for processes

Page 35: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

35

SKYBRIDGE GLOBAL

Trouble shootingTrouble shooting

Page 36: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

36

SKYBRIDGE GLOBAL

Error ReportingError Reporting

Banner Forms show message Banner Forms show message on hint line. Open display on hint line. Open display error to see Oracle error. error to see Oracle error.

Page 37: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

37

SKYBRIDGE GLOBAL

Error reportingError reporting

Reports show Oracle Error (ORA 28113 Predicate Reports show Oracle Error (ORA 28113 Predicate Syntax Error) Syntax Error) Self Service show error on new error pageSelf Service show error on new error page Oracle BugOracle Bug

– Error with Update and Delete are not reported. Oracle does not note the access restriction and returns record updated successfully.

– APIs are programmed to show an error when this happens (However, not all tables have API’s)

Page 38: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

38

SKYBRIDGE GLOBAL

API message for failed update, delete API message for failed update, delete

Page 39: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

www.skybridgeglobal.com

SkyBridge Global, Inc.

Connecting your business with technology

© 2004 SkyBridge Global, Inc. All rights reserved. Proprietary and Confidential.

Questions and AnswersQuestions and Answers

Page 40: Fine-Grained Access Control in Banner 7 · FGAC and Banner Personally Identifiable Information (PII) – Philosophy of PII: User can access PII for records in their processing area

www.skybridgeglobal.com

SkyBridge Global, Inc.

Connecting your business with technology

© 2004 SkyBridge Global, Inc. All rights reserved. Proprietary and Confidential.

Thank you for your participationThank you for your participation

Shelly WingfieldShelly [email protected]@skybridgeglobal.com