ISSEA 2002-1 Security Engineering for Roles and Resources in a Distributed Environment Security Engineering for Roles and Resources in a Distributed Environment.

Slides:



Advertisements
Similar presentations
TSpaces Services Suite: Automating the Development and Management of Web Services Presenter: Kevin McCurley IBM Almaden Research Center Contact: Marcus.
Advertisements

IFIP Profs. Steven A. Demurjian and T.C. Ting J. Balthazar, H. Ren, and C. Phillips Computer Science & Engineering Department 191 Auditorium Road,
CSE300-1 Profs. Steven A. Demurjian Q. Jin, J. Nam, Z. Qian and C. Phillips Computer Science & Engineering Department 191 Auditorium Road, Box U-155 The.
ASCR Data Science Centers Infrastructure Demonstration S. Canon, N. Desai, M. Ernst, K. Kleese-Van Dam, G. Shipman, B. Tierney.
DESIGN AND IMPLEMENTATION OF SOFTWARE COMPONENTS FOR A REMOTE LABORATORY J. Fernandez, J. Crespo, R. Barber, J. Carretero University Carlos III of Madrid.
JINI Shashwat Shriparv InfinitySoft.
THE JINI TECHNOLOGY Alessio Zumbo
Chapter 14 From Cryptography and Network Security Fourth Edition written by William Stallings, and Lecture slides by Lawrie Brown, the Australian Defence.
A Java Architecture for the Internet of Things Noel Poore, Architect Pete St. Pierre, Product Manager Java Platform Group, Internet of Things September.
Connect. Communicate. Collaborate Click to edit Master title style MODULE 1: perfSONAR TECHNICAL OVERVIEW.
UConnBI-BC-1 Security Issues for Bioinformatics Prof. Steven A. Demurjian, Sr. Director, CSE Graduate Program Computer Science & Engineering Department.
Effective Coordination of Multiple Intelligent Agents for Command and Control The Robotics Institute Carnegie Mellon University PI: Katia Sycara
G O B E Y O N D C O N V E N T I O N WORF: Developing DB2 UDB based Web Services on a Websphere Application Server Kris Van Thillo, ABIS Training & Consulting.
Notes to the presenter. I would like to thank Jim Waldo, Jon Bostrom, and Dennis Govoni. They helped me put this presentation together for the field.
Distributed Systems Architectures
IFIP Role Delegation for a Distributed, Unified RBAC/MAC* C. Phillips, S. Demurjian, T.C. Ting and J. Ellis Computer Science & Engineering Department.
JINI-1 JINI: A Technology for 21st Century Is it Ready for Prime Time? Prof. Steven A. Demurjian and Dr. Paul Barr Parag Bhogte and Haiying Ren Computer.
Grids and Grid Technologies for Wide-Area Distributed Computing Mark Baker, Rajkumar Buyya and Domenico Laforenza.
The Architecture of Transaction Processing Systems
SACMAT02-1 Security Prototype Defining a Signature Constraint.
SWA-1.1 CSE300 Software Architectures Chapter 2: Architectural Styles Prof. Steven A. Demurjian, Sr. Computer Science & Engineering Department The University.
Lecture slides prepared for “Computer Security: Principles and Practice”, 2/e, by William Stallings and Lawrie Brown, Chapter 4 “Overview”.
Web-based Portal for Discovery, Retrieval and Visualization of Earth Science Datasets in Grid Environment Zhenping (Jane) Liu.
Włodzimierz Funika, Filip Szura Automation of decision making for monitoring systems.
Requirements for Component Integration Technology David Lewis FlowThru Technical Co-ordinator Department of Computer Science University College London.
● Problem statement ● Proposed solution ● Proposed product ● Product Features ● Web Service ● Delegation ● Revocation ● Report Generation ● XACML 3.0.
Presented by Mark Miyashita
1 Homeland Security Issues and Solutions Prof. Steven A. Demurjian, Sr. Director, CSE Graduate Program Computer Science & Engineering Department The University.
1 Security and Agent Based Computing Environment Presented by: Feng Zhang, Markus Kaiser, Hien Nguyen, and Shu Wang.
OASIS ebXML Registry Standard Open Forum 2003 on Metadata Registries 10:30 – 11:15 January 20, 2003 Kathryn Breininger The Boeing Company Chair, OASIS.
Outline  Enterprise System Integration: Key for Business Success  Key Challenges to Enterprise System Integration  Service-Oriented Architecture (SOA)
第十四章 J2EE 入门 Introduction What is J2EE ?
J2EE Structure & Definitions Catie Welsh CSE 432
1 School of Computer, National University of Defense Technology A Profile on the Grid Data Engine (GridDaEn) Xiao Nong
Shib-Grid Integrated Authorization (Shintau) George Inman (University of Kent) TF-EMC2 Meeting Prague, 5 th September 2007.
Ramiro Voicu December Design Considerations  Act as a true dynamic service and provide the necessary functionally to be used by any other services.
IFIP Profs. Steven A. Demurjian Computer Science & Engineering Department 191 Auditorium Road, Box U-155 The University of Connecticut Storrs, Connecticut.
SECISS-1 CSE333 Prof. Steven A. Demurjian Computer Science & Engineering Department 191 Auditorium Road, Box U-155 The University of Connecticut Storrs,
1 Schema Registries Steven Hughes, Lou Reich, Dan Crichton NASA 21 October 2015.
A Flexible Access Control Model for Web Services Elisa Bertino CERIAS and CS Department, Purdue University Joint work with Anna C. Squicciarini – University.
Database Design and Management CPTG /23/2015Chapter 12 of 38 Functions of a Database Store data Store data School: student records, class schedules,
Middleware for Grid Computing and the relationship to Middleware at large ECE 1770 : Middleware Systems By: Sepehr (Sep) Seyedi Date: Thurs. January 23,
Secure Systems Research Group - FAU SW Development methodology using patterns and model checking 8/13/2009 Maha B Abbey PhD Candidate.
NT SECURITY Introduction Security features of an operating system revolve around the principles of “Availability,” “Integrity,” and Confidentiality. For.
STUDENT MANAGEMENT INFORMATION SYSTEM OPUS-College.
NA-MIC National Alliance for Medical Image Computing UCSD: Engineering Core 2 Portal and Grid Infrastructure.
ABone Architecture and Operation ABCd — ABone Control Daemon Server for remote EE management On-demand EE initiation and termination Automatic EE restart.
GRID Overview Internet2 Member Meeting Spring 2003 Sandra Redman Information Technology and Systems Center and Information Technology Research Center National.
Dynamic and Selective Combination of Extension in Component-based Applications Eddy Truyen, Bart Vanhaute, Wouter Joosen, Pierre Verbaeten, Bo N. Jørgensen.
Symphony A Java-Based Composition and Manipulation Framework for Computational Grids Dennis Kafura Markus Lorch This work is supported by the Virginia.
Design and Implementation of a Rationale-Based Analysis Tool (RAT) Diploma thesis from Timo Wolf Design and Realization of a Tool for Linking Source Code.
Jini Architecture Introduction System Overview An Example.
1 Registry Services Overview J. Steven Hughes (Deputy Chair) Principal Computer Scientist NASA/JPL 17 December 2015.
Jini Architectural Overview Li Ping
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
1 AHM, 2–4 Sept 2003 e-Science Centre GRID Authorization Framework for CCLRC Data Portal Ananta Manandhar.
1 Distributed Systems Distributed Object-Based Systems Chapter 10.
1 Active Directory Service in Windows 2000 Li Yang SID: November 2000.
Enterprise Computing with Jini Technology Mark Stang and Stephen Whinston Jan / Feb 2001, IT Pro presented by Alex Kotchnev.
OASIS ebXML Registry Standard Open Forum 2003 on Metadata Registries 10:30 – 11:15 January 20, 2003 Kathryn Breininger The Boeing Company Chair, OASIS.
A Multi-Dimensional Configurable Access Control Framework for Mobile Applications By: Yaira K. Rivera Sánchez Major Advisor: Steven A. Demurjian.
Windows Active Directory – What is it? Definition - Active Directory is a centralized and standardized system that automates network management of user.
DigitalHC-1 CSE 5810 Digital Healthcare Security Prof. Steven A. Demurjian, Sr. Computer Science & Engineering Department The University of Connecticut.
CSE300-2 Distributed Object Computing
Building Distributed Educational Applications using P2P
Role-Based Security in a Distributed Resource Environment*
XMSF and Command & Control - GIG, XBML/C4I Testbed, XDV, XMSF Profiles
A Component-based Architecture for Mobile Information Access
JINI ICS 243F- Distributed Systems Middleware, Spring 2001
Presentation transcript:

ISSEA Security Engineering for Roles and Resources in a Distributed Environment Security Engineering for Roles and Resources in a Distributed Environment Profs. Steven A. Demurjian and T.C. Ting Computer Science & Engineering Department 191 Auditorium Road, Box U-155 The University of Connecticut Storrs, Connecticut Lt.Col. Charles E. Phillips, Jr. Computer Science & Engineering Department 191 Auditorium Road, Box U-155 The University of Connecticut Storrs, Connecticut

ISSEA Overview of Presentation  Introduction  Distributed Security Model  Enforcement Framework  Experimental Prototype  Supporting Advanced Applications  Conclusions  Future Work

ISSEA Introduction Goals of Our Research  Incorporation of Role-Based Security within a Distributed Resource Environment  Highly-Available Distributed Applications Constructed Using Middleware Tools  Demonstrate Use of Lookup Service to Provide Role-based Access of Clients to Resources  Propose Software Architecture and Role-Based Security Model with Constraints for  Authorization of Clients Based on Role  Authentication of Clients and Resources  Enforcement and Tracking so Clients Only Use Authorized Services (of Resource)  Propose a Flexible Security Solution for Clients and Services (Resources) in Dynamic Coalitions

ISSEA Introduction Proposed Architecture Security Authorization Client (SAC) Security Policy Client (SPC) Wrapped Resource for Legacy Application Wrapped Resource for Database Application Lookup Service General Resource Wrapped Resource for COTS Application Global Clock Resource (GCR) Java Client Legacy Client Database Client Software Agent COTS Client Lookup Service Security Registration Services Unified Security Resource (USR) Security Policy Services Security Authorization Services Security Analysis and Tracking (SAT)

ISSEA Distributed Security Model Lookup Service Middleware  Construct Distributed Applications by  Federating Groups of Users  Resources Provide Services for Users  A Resource Provides a Set of Services for Use by Clients (Users) and Other Resources (Services)  A Service is Similar to a set of Public Methods  Exportable - Analogous to API  Any Entity Utilized by Person or Program  Samples Include:  Computation, Persistent Store, Printer, Sensor  Software Filter, Real-Time Data Source  Services: Concrete Interfaces of Components  Services Register with Lookup Service

ISSEA Distributed Security Model Join, Lookup, and Service Invocation Client Resource Service Object Service Attributes Lookup Service Request Service AddCourse(CSE900) Return Service Proxy to AddCourse( ) JoinJoin Register & Lease Services CourseDB Class Contains Method AddCourse ( ) Service Invocation via Proxy by Transparent RMI Call Service Object Service Attributes Registry of Entries Step1. Join. Services are registered Step2. Client makes request Step3. Lookup Service returns Service Step4. Client Invokes AddCourse(CSE230) on Resource Step5. Resource Returns Results of Invocation to Client

ISSEA Distributed Security Model Lookup Service Shortfalls  Many Current Lookup Services  Successfully Dictates Service Utilization  Requires Programmatic Solution for Security  Does Not Selectively and Dynamically Control Access Based on Client Role  Security of a Distributed Resource Should Selectively and Dynamically Control Client Access to Services Based on the Role  Our Approach  Define Dedicated Resources to Authorize, Authenticate, and Enforce Security by Role  Proposed Unified Security Resources (USR)  Policy Services, Authoriz. Services, Registration Services, & Analysis/Tracking Services

ISSEA Distributed Security Model Resource, Service, Methods  Definition 1: A Distributed Application Consists of M Software/system Resources (Legacy, COTS, Database, Web Server, Etc.) Uniquely Identifiable  Definition 2: Each Resource is Composed of Services That Are Uniquely Identifiable  Definition 3: Each Service is Composed of a Set of Uniquely Identifiable Methods. Note That the Triple (R-id, S-id, M-id) is Unique.  Definition 4: The Signature of a Method of Service of Resource is Unique, and Consists of:  Method Name  Parameter List of Names/Types  Return Type (possible Null)

ISSEA Distributed Security Model Resources, Services, and Methods Read Service with Methods : String getAllClasses (Token); String getRegisteredCourses (Token, StudentName); Vector getClasses (long Token, Semester); Vector getClassDescription (Token, Course); Vector getPreReqCourses (Token, Course); Vector getVacantClasses (Token, Semester); Modification Service with Methods : boolean addCourse (Token, Course); boolean removeCourse (Token, Course); boolean updateEnroll (Token, CourseNumber, UpdateChoice, NewValue); boolean registerCourse (Token, Course, StudentName); boolean dropCourse (Token, Course, StudentName);

ISSEA Distributed Security Model Roles and Constraints  Definition 5: A User Role, UR, is a Uniquely Identifiable Named Entity Representing a Specific Set of Responsibilities Against an Application.  Definition 6: A Signature Constraint, SC, is a Boolean Expression Defined on Method Signature to Limit the Allowable Values on the Parameters, and the Return Type.  Definition 7: A Time Constraint, TC, is an Expression Defined for a Discrete Period of Time (Days or Time Period in GMT) Under Which a Method Can Be Invoked:  TC = {E | E=“Never” or E= “Always” or E = Boolean Expression}.

ISSEA Modification, addCourse, cse101  course  cse499 Modification, updateEnroll, newValue  30 Read, getClasses, semester = Spring Distributed Security Model Roles and Constraints  Sample Signature Constraints for CourseDB Resource  Sample Time Constraints 01jan01  date  31mar01 1apr01  date  14apr01 date = 10apr01

ISSEA Distributed Security Model Privilege Tuples and Authorizations  Definition 8: Assume a Distributed Application Consists of Resources, Services, and Methods. A Security Privilege Tuple Contains a Specific Resource, Service, and/or Method (with Optional Time and Signature Constraint) : {UR, TC, Ri, Sij, [Mijk, SCijk]}  Definition 9: Assume a Distributed Application of Resources, Services, and Methods. A Security Privilege Tuple Set, , Contains All of the Resources, Services, and Methods that have been Authorized (Granted) to a UR:  ={[UR, TC, Ri, Sij, [Mijk, Scijk]}

ISSEA Distributed Security Model Roles, Constraints, and Authorizations Role: CSEFaculty {[CSEFaculty,always,CourseDB,Read,[*]], [CSEFaculty,01jan01  date  31mar01,CourseDB, Modification, [addCourse, cse101  course  cse499]], [CSEFaculty,always,CourseDB,Modification,[updateEnroll, newValue  30]]} Role: CSEUndergrad {[CSEUndergrad,10dec00  date  16feb01, CourseDB, Read, [getClasses, semester = Spring]], [CSEUndergrad,1apr01  date  14apr01, CourseDB, Modification, [registerCourse, cse101  course  cse299]], [CSEUndergrad,15apr01  date  30apr01,CourseDB,Modification, [registerCourse, true]]} Authorized Users/Roles Harris: CSEUndergrad Jones: CSEFaculty, CSEDeptHead Token: [Harris, UR/CSEUndergrad, IP/ , Time/16mar01-14:50:04]

ISSEA Distributed Security Model User and Authorizations  Definition 10: A User, U, is Uniquely Identifiable (User-id) and Authorized to Play One or More Roles in an Application. A User Must Always Play Exactly One Role at Any Point During an Active Session, but is Able to Change Roles During a Session.  Definition 11: A Client, C, Represents an Authorized User, U, Utilizing a Client Application, and is Uniquely Identified During a Specific Session Via a System Generated Token: [User-id, Ur-id, Ip-address, Token-creation- time]

ISSEA Enforcement Framework The Unified Security Resource (USR) Wrapped Resource for Legacy Application Wrapped Resource for Database Application. Security Authorization Client (SAC) Security Policy Client (SPC) Lookup Service General Resource Wrapped Resource for COTS Application Global Clock Resource (GCR) Java Client Legacy Client Database Client Software Agent COTS Client Lookup Service Security Registration Services Unified Security Resource (USR) Security Policy Services Security Authorization Services Security Analysis and Tracking (SAT)

ISSEA Enforcement Framework Security Policy Services Register Service: Register_Resource(R_Id); Register_Service(R_Id, S_Id); Register_Method(R_Id, S_Id, M_Id); Register_Signature(R_Id, S_Id, M_Id, Signat); UnRegister_Resource(R_Id); UnRegister_Service(R_Id, S_Id); UnRegister_Method(R_Id, S_Id, M_Id); Unregister_Token(Token) Query Privileges Service: Query_AvailResource(); Query_AvailMethod(R_Id); Query_Method(Token, R_Id, S_Id, M_Id); Check_Privileges(Token, R_Id, S_Id, M_Id, ParamValueList); User Role Service: Create_New_Role(UR_Name, UR_Disc, UR_Id); Delete_Role(UR_Id); Constraint Service:DefineTC(R_Id, S_Id, M_Id, SC); DefineSC(R_Id, S_Id, M_Id, SC); CheckTC(Token, R_Id, S_Id, M_ID); CheckSC(Token, R_Id, S_Id, M_ID, ParamValueList); Grant-Revoke Service: Grant{Revoke}_Resource(UR_Id, R_Id); Grant{Revoke}_Service(UR_Id, R_Id, S_Id); Grant{Revoke}_Method(UR_Id, R_Id, S_Id, M_Id); Grant{Revoke}_SC(UR_Id, R_Id, S_Id, M_Id, SC); Grant{Revoke}_TC(UR_Id, R_Id, S_Id, M_Id, TC);

ISSEA Enforcement Framework Other Services Register Client Service Create_Token(User_Id, UR_Id, Token); Register_Client(User_Id, IP_Addr, UR_Id); UnRegister_Client(User_Id, IP_Addr, UR_Id); IsClient_Registered(Token); Find_Client(User_Id, IP_Addr); Security Tracking and Analysis Services Tracking Service: Logfile(Log String) Analysis Service: Analyze (Java Class File) SECURITY REGISTRATION SERVICES SECURITY AUTHORIZATION SERVICES Authorize Role Service Grant_Role(UR_Id, User_Id); Revoke_Role(UR_Id, User_Id); Client Profile Service Verify_UR(User_Id, UR_Id); Erase_Client(User_Id); Find_Client(User_Id); Find_All_Clients();

ISSEA Enforcement Framework Client, Resource, Service Invocations Security Authorization Services Security Registration Services Lookup Service Course Client 1 Register_Client(Harris,cse.uconn.edu,CSEUndergrad) 10 Return Result of Check_Privileges(…) 4 Return Result,Create_Token(CSEUndergrad, Token) 6 RegisterCourse(Token, CSE230, Harris) 3 Client OK? 11 Return Result,RegisterCourse(…) 5. Discover/Lookup(UnivDB,Modification, RegisterCourse) Returns Proxy to Course Client 7 IsClient_Registered(Token) 9 Check_Privileges(Token, UnivDB, Modification, RegisterCourse, [CSE230, Harris]) 2 Verify_UR(Harris, CSEUndergrad) Security Policy Services UnivDB Resource 8 Return Result of IsClient_Registered(…) USR

ISSEA Enforcement Framework Security Prototype (JINI and CORBA)  During the Past Two Years, Extensive Prototype has Been Developed on NT/Linux Using:  Java as Main Development Language  JINI/Corba as Middleware  Oracle/MS Access as Databases  Security Management/Administration Tools  Security Policy Client  Security Authorization Client  Tracking/Analysis Client  We’ll Discuss Each in Turn by Reviewing a Series of GUI Bitmaps

ISSEA Enforcement Framework Security Prototype (JINI and CORBA) Java GUI PDB Client JINI Lookup Service Security System Resource PDB &UDB Common Resource (Global Clock) CORBA Lookup Service PDBServer Service write_medical_history(); write_prescription(); get_medical_history(); get_diagnosis(); set_payment_mode(); UDBServer Service GetClasses(); PreReqCourse(); GetVacantClasses(); EnrollCourse(); AddCourse(); RemoveCourse(); UpdateCourse(). Java GUI UDB Client Security Policy Client Security Authorization Client Patient DB Resource (PDB) University DB Resource (UDB)

ISSEA Security Prototype Security Policy Client

ISSEA Security Prototype Defining a Signature Constraint

ISSEA Security Prototype Tracking Logins and Actions

ISSEA Security Prototype Security Authorization Client

ISSEA Security Prototype Tracking Methods of Resources

ISSEA Security Prototype Global Clock Server for Timestamp

ISSEA Security Prototype Client Authentication Upon Login

ISSEA Security Prototype Registering Individual Method

ISSEA Security Prototype Registering Methods for Resource

ISSEA Security Prototype Confirmation of Registered Methods

ISSEA Security Prototype Tracking Defined Resources

ISSEA Security Prototype Administration of Roles

ISSEA Security Prototype Creating User Role

ISSEA Security Prototype Granting Resources to Roles

ISSEA Security Prototype Reviewing Access of Resources to Roles

ISSEA Security Prototype Granting Methods to Roles

ISSEA Security Prototype Confirmation of Method to Role

ISSEA Security Prototype Creating a User

ISSEA Security Prototype Granting Roles to User

ISSEA Supporting Advanced Applications Dynamic Coalition Problem  A Crisis is Any Situation Requiring National or International Attention as Determined by the President of the United States or UN  A Coalition is an Alliance of Organizations: Military, Civilian, International or any Combination  A Dynamic Coalition is Formed in a Crisis and Changes as Crisis Develops, with the Key Concern Being the Most Effective way to Solve the Crisis  Dynamic Coalition Problem (DCP) is the Inherent Security, Resource, and/or Information Sharing Risks that Occur as a Result of the Coalition Being Formed Quickly

ISSEA Supporting Advanced Applications Global Command And Control System  GCCS is Used to Manage Activities in a Joint and Combined Environment  Joint Refers to More than One Branch Army, Navy, Air Force, Marines, or Coast Guard and Combined Means More Than One Country  GCCS Provides a Local Commander With Operational Awareness in Near Real-time Through an Integrated Set of Resources and Services  GCCS Provides Information-Processing Support to Planning, Mobility, Sustainment, and Messaging by Bringing Together 20 Separate Automated Systems With Several Additions Planned

ISSEA Supporting Advanced Applications GCCS Shortfalls  Does Not Consider Multiple Roles for Users  Does Not Place Time Limitations on Users  Does Not Use Any Resource Constraints  Is Not a Multi-level Secure System  Is a U. S. Only System

ISSEA Supporting Advanced Applications DCP Objectives  Federate Users Quickly and Dynamically  Bring Together Resources Without Modification  Dynamically Realize and Manage Simultaneous Crises  Identify Users by their Roles to Finely Tune Access  Authorize, Authenticate, and Enforce a Scalable Security Policy That is Flexible in Response to Collation Needs  Security Solution that is Portable, Extensible, and Redundant for Survivability  Management, and Introspection Capabilities to Track and Monitor System Behavior

ISSEA Concluding Remarks  For a Distributed Resource Environment  Proposed & Explained a Constraint-Based Approach to Role Security  Authorize, Authenticate, and Enforce  Presented an Software Architecture Containing  Constraint-Based Security Model for Role Security in a Distributed Resource Environment  An Enforcement Framework for Security with Registration, Authorization, and Policy Services

ISSEA Concluding Remarks  Developed Prototype System  JINI and CORBA-Based Prototype for Role- Based Security Model that Allows Role Access  System is Flexible, Scalable and Redundant  System Uses Constraints to Realize Policy  Presented Real-World Issues  Defined the Dynamic Coalition Problem  Discussed the Global Command and Control System and Its Shortcomings  Offered a Set of Objectives for Realization of Distributed Security in a Dynamic Setting

ISSEA Ongoing and Future Work  Integrating Mandatory Access Controls  Currently Integrated into Security Prototype  Model Extended to Include Classifications  Role Deconfliction and Mutual Exclusion  Preliminary Model Being Designed  Prototyping Planned in Near Future  User Constraints  Extend to Include User Constraints  Prototyping Underway  User Role Delegation Authority  Preliminary Model Designed  Prototyping Underway