* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Lecture3 - The University of Texas at Dallas
Clusterpoint wikipedia , lookup
Business intelligence wikipedia , lookup
Concurrency control wikipedia , lookup
Relational model wikipedia , lookup
Information security wikipedia , lookup
Operational transformation wikipedia , lookup
Computer security wikipedia , lookup
Access Control in Data Management Systems Dr. Bhavani Thuraisingham The University of Texas at Dallas Access Control and Policies in Data Management Systems September 2013 Outline Discretionary Access Control in Relational Databases Mandatory Access Control in Relational Databases - Security Constraints Types of Access Control - Inference problem, Role-based, Temporal, Usage Access Control in Other Databases - Objects, Federated Current Trends in Access Control - Date Warehousing, Semantic Web, Privacy Control Next Steps in Access Control Access Control in Relational Databases: 1975 - Present Access Control policies were developed initially for file systems - E.g., Read/write policies for files Access control in databases started with the work in System R and Ingres Projects - Access Control rules were defined for databases, relations, tuples, attributes and elements - SQL and QUEL languages were extended GRANT and REVOKE Statements Read access on EMP to User group A Where EMP.Salary < 30K and EMP.Dept <> Security - Query Modification: Modify the query according to the access control rules Retrieve all employee information where salary < 30K and Dept is not Security Query Modification Algorithm Inputs: Query, Access Control Rules Output: Modified Query Algorithm: - Given a query Q, examine all the access control rules relevant to the query - Introduce a Where Clause to the query that negates access to the relevant attributes in the access control rules Example: rules are John does not have access to Salary in EMP and Budget in DEPT Query is to join the EMP and DEPT relations on Dept # Modify the query to Join EMP and DEPT on Dept # and project on all attributes except Salary and Budget - Output is the resulting query Mandatory Access Control (MAC) in Databases: 1982- Present Bell and LaPadula Policy adapted for databases - Read at or below your level and Write at your level; Granularity of classification: Databases, Relations, Tuples, Attributes, Elements Security Architectures - Operating system providing mandatory access control and DBMS is untrusted with respect to MAC (e.g., SRI’s SeaView) - Trusted Subject Architecture where DBMS is trusted with respect to MAC (e.g., TRW’s ASD and ASD Views) - Integrity Lock where Trusted front-end computes checksums (e.g., MITRE’s MISTRESS Prototype) - Distributed Architecture where data is distributed according to security levels and access through trusted front-end (e.g., NRL’s SINTRA) Extended Kernel for Security Policy Enforcement such as constraints (e.g., Honeywell’s Lock Data Views) Security Policies / Access Control Rules Simple Constraint: John cannot access the attribute Salary of relation EMP Content-based constraint: If relation MISS contains information about missions in the Middle East, then John cannot access MISS Association-based Constraint: Ship’s location and mission taken together cannot be accessed by John; individually each attribute can be accessed by John Release constraint: After X is released Y cannot be accessed by John Aggregate Constraints: Ten or more tuples taken together cannot be accessed by John Dynamic Constraints: After the Mission, information about the mission can be accessed by John Enforcement of Security Policies/Constraints User Interface Manager Security Constraints Constraint Manager Query Processor: Constraints during query and release operations Update Processor: Database Design Tool Constraints during database design operation Constraints during update operation Relational DBMS Database Other Developments in Access Control Inference Problem and Access Control - Inference problem occurs when users pose queries and deduce unauthorized information from the legitimate responses - Security constraint processing for controlling inferences - More recently there is work on controlling release information instead of controlling access to information Temporal Access Control Models - Incorporates time parameter into the access control models Role-based access control - Controlling access based on roles of people and the activities they carry out; Implemented in commercial systems Positive and Negative Authorizations - Should negative authorizations be explicitly specified? How can conflicts be resolved? Some Examples Temporal Access Control - After 1/1/05, only doctors have access to medical records Role-based Access Control - Manager has access to salary information - Project leader has access to project budgets, but he does not have access to salary information - What happens is the manager is also the project leader? Positive and Negative Authorizations - John has write access to EMP - John does not have read access to DEPT - John does not have write access to Salary attribute in EMP - How are conflicts resolved? Access Control in Other Types of Databases Object Databases - Controlling access to classes, object instances, instance variables, method execution etc. - E.g., MCC’s ORION model both for discretionary security and mandatory security Distributed Databases - Extend access control for relational databases to a distributed environment across the nodes Federated Databases - Integrate security policies exported by the component database systems and form a federated policy Deductive Databases - Logic for secure data and knowledge base systems – e.g., NTML Non-monotonic Typed Multilevel Logic Access Control in Databases: Current Trends (1996 – Present) Data Warehousing - Controlling access to aggregate information in the Warehouse Multimedia Database Systems - Geospatial Information Systems Web Databases - E-Commerce and Knowledge Management, Collaboration/Workflow Semantic Web - XML, RDF, Information Integration Dependable Databases - Real-time/Embedded Database Systems - Sensor/Stream Database Systems Policies Need to Know to Need to Share RBAC UCON Dissemination Risk based access control Trust Management/Credential/Disclosure Directions Major conferences for Policy and Access Control: - IEEE Policy Workshop - ACM SACMAT Need to Know to Need to Share Need to know policies during the cold war; even if the user has access, does the user have a need to know? Pose 9/11 the emphasis is on need to share - User may not have access, but needs the data Do we give the data to the user and then analyze the consequences Do we analyze the consequences and then determine the actions to take Do we simply not give the data to the user What are risks involved? RBAC Access to information sources including structured and unstructured data both within the organization and external to the organization Access based on roles Hierarchy of roles: handling conflicts Controlled dissemination and sharing of the data RBAC (Sandhu) UCON RBAC model is incorporated into UCON and useful for various applications - Authorization component Obligations Obligations are actions required to be performed before an access is permitted - Obligations can be used to determine whether an expensive knowledge search is required Attribute Mutability - Used to control the scope of the knowledge search Condition - Can be used for resource usage policies to be relaxed or tightened - UCON (Sandhu) Dissemination Policies Release policies will determine to whom to release the data - What is the connection to access control - Is access control sufficient - Once the data is retrieved from the information source (e.g., database) should it be released to the user Once the data is released, dissemination policies will determine who the data can be given to - Electronic music, etc. Risk Based Data Sharing/Access Control What are the risks involved in releasing/disseminating the data Risk modeling should be integrated with the access control model Simple method: assign risk values Higher the risk, lower the sharing What is the cost of releasing the data? Cost/Risk/Security closely related Trust Management Trust Services - Identify services, authorization services, reputation services Trust negotiation (TN) Digital credentials, Disclosure policies TN Requirements - Language requirements Semantics, constraints, policies System requirements Credential ownership, validity, alternative negotiation strategies, privacy Example TN systems KeyNote and Trust-X (U of Milan), TrustBuilder (UIUC) - - Trust Management The problem: establishing trust in open systems Interactions between strangers - In conventional systems user identity is known in advance and can be used for performing access control - In open systems partecipants may have no pre-existing relationship and may not share a common security domain Mutual authentication - Assumption on the counterpart honesty no longer holds Both participants need to authenticate each other Trust Negotiation model A promising approach for open systems where most of the interactions occur between strangers The goal: establish trust between parties in order to exchange sensitive information and services The approach: establish trust by verifying properties of the other party Trust negotiation: the approach Interactions between strangers in open systems are different from traditional access control models Policies and mechanisms developed in conventional systems need to be revised USER ID’s VS. SUBJECT PROPERTIES ACCESS CONTROL POLICIES VS. DISCLOSURE POLICIES Subject properties: digital credentials Assertion about the credential owner issued and certified by a Certification Authority. Each entity has an associated set of credentials, describing properties and attributes of the owner. CA CA CA CA Use of Credentials Digital Credentials Issuer -Julie -3 kids Alice -Married Check -American -Julie - American Credential Check -Julie - Married Company B Want to know marital status Company A Want to know citizenship Referenced from http://www.credentica.com/technology/overview.pdf Credentials Credentials can be expressed through the Security Assertion Mark-up Language (SAML) SAML allows a party to express security statements about a given subject Authentication statements - Attribute statements - Authorization decision statements - Disclosure policies Disclosure policies govern: Disclosure policies Access to protected resources Access to sensitive information Disclosure of sensitive credentials Disclosure policies express trust requirements by means of credential combinations that must be disclosed to obtain authorization Disclosure policies - Example Suppose NBG Bank offers loans to students To check the eligibility of the requester, the Bank asks the student to present the following credentials The student card - The ID card - Social Security Card - Financial information – either a copy of the Federal Income Tax - Return or a bank statement Disclosure policies - Example p1= ({}, Student_Loan Student_Card()); p2= ({p1}), Student_Loan Social_Security_Card()); p3= ({p2}, Student_Loan Federal_Income_Tax_Return()); p4= ({p2}, Student_Loan Bank_Statement()); P5=({p3,p4}, Student_Loan DELIV); These policies result in two distinct “policy chains” that lead to disclosure [p1, p2, p3, p5] [p1, p2, p4, p5] Directions Policies are of much interest to many organizations and applications - Financial, Medical, Retail, Manufacturing etc Roles and responsibilities Flexible policies RBAC, UCON, RBUC, Trust Negotiation, Dissemination Policies Need to Know to Need to Share IEEE POLICY and ACM SACMAT