Download presentation
Presentation is loading. Please wait.
1
Wednesday, June 03, 2015 © 2001 TrueTrust Ltd1 PERMIS PMI David Chadwick
2
Wednesday, June 03, 2015 © 2001 TrueTrust Ltd2 X.812|ISO 10181 Access Control Framework ADF Initiator Target Submit Access Request Present Access Request Decision Request Decision AEF
3
Wednesday, June 03, 2015 © 2001 TrueTrust Ltd3 ADF API Decision Request Decision AEF ADF Examples: OpenGroup AZN API IETF GAA API PERMIS API Application specific Application independent
4
Wednesday, June 03, 2015 © 2001 TrueTrust Ltd4 AZN API System Structure Initiator Target AEF Authentication Service Authentication Mechanism AZN API ADF Initiator Security Attributes Access Control Policy Rules AZN API Implementation
5
Wednesday, June 03, 2015 © 2001 TrueTrust Ltd5 PERMIS API System Structure ADF The PERMIS PMI API Initiator Target Submit Signed Access Request Present Access Request Decision Request Decision LDAP Directory Retrieve Policy and Role ACs AEF Authentication Service Application Gateway PERMIS API Implementation PKI
6
Wednesday, June 03, 2015 © 2001 TrueTrust Ltd6 PERMIS PMI Components Privilege Policy Schema/DTD –This defines the meta rules that govern the creation of the Privilege Policy (Access Control Policy Rules) Privilege Allocator –This tool allows an administrator to create and sign Attribute Certificates, including a Policy AC (this is a signed version of the Privilege Policy), and store them in an LDAP directory The PERMIS PMI Implementation –This grants or denies Initiators access to resources, based on the Privilege Policy and the ACs of the Initiator. The ADF is accessed via the PERMIS API
7
Wednesday, June 03, 2015 © 2001 TrueTrust Ltd7 Application Specific Components The Access Enforcement Function –Its task is to ensure the Initiator is authenticated by the PKI, then to call the ADF, and give access to the target if allowed The PKI –Any standard conforming PKI can be used Java PKCS#11 Interface to the PERMIS PMI The Privilege Policy in XML –This must be written according to the schema/DTD LDAP Directory –To store the Policy and Initiator ACs
8
Wednesday, June 03, 2015 © 2001 TrueTrust Ltd8 PERMIS X.509 PMI RBAC Policy Role Based Access Control Policy written in XML Initiators are given Role Assignment ACs A role is loosely defined as any Attribute Type and Attribute Value Role values can form a hierarchy, where superiors inherit the privileges of their subordinates e.g. CTO>PM>TL>TM ACs can be issued by any trusted AA Access is based on the Roles Published by XML.org at www.xml.org
9
Wednesday, June 03, 2015 © 2001 TrueTrust Ltd9 An Example Policy - the Header <!DOCTYPE X.509_PMI_RBAC_Policy SYSTEM "file://localhost/C:/research/permis/policy7.dtd">
10
Wednesday, June 03, 2015 © 2001 TrueTrust Ltd10 Role Assignment Policy Components Subject Policy –Specifies subject domains based on LDAP subtrees Role Hierarchy Policy –Specifies hierarchy of role values SOA Policy –Specifies who is trusted to issue ACs Role Assignment Policy –Says which roles can be given to which subjects by which SOAs, with which validity times and whether delegation is allowed
11
Wednesday, June 03, 2015 © 2001 TrueTrust Ltd11 An Example Subject Policy
12
Wednesday, June 03, 2015 © 2001 TrueTrust Ltd12 An Example Role Hierarchy Policy TenderOfficer TenderClerk Tenderer
13
Wednesday, June 03, 2015 © 2001 TrueTrust Ltd13 An Example SOA Policy
14
Wednesday, June 03, 2015 © 2001 TrueTrust Ltd14 An Example Role Assignment Policy
15
Wednesday, June 03, 2015 © 2001 TrueTrust Ltd15 Policy Components (cont) Target Policy –Specifies the target domains covered by this policy, using LDAP subtrees Action Policy –Specifies the actions (operations) supported by the targets, along with their allowed operands Target Access Policy –Specifies which roles are needed to access which targets for which actions, and under what conditions
16
Wednesday, June 03, 2015 © 2001 TrueTrust Ltd16 Target Access Conditions A condition comprises: –a comparison operator –the LHS operand(variable), described by its source, name and type, and variable source is the action or the environment Eg. Source Read action, Name filename, Type string Eg. Source environment, Name time of day, Type time –a series of one or more variables or constant values against which the LHS operand is to be compared Conditions may be combined using AND, OR, NOT
17
Wednesday, June 03, 2015 © 2001 TrueTrust Ltd17 An Example Target Policy
18
Wednesday, June 03, 2015 © 2001 TrueTrust Ltd18 An Example Action Policy
19
Wednesday, June 03, 2015 © 2001 TrueTrust Ltd19 An Example Target Access Policy
20
Wednesday, June 03, 2015 © 2001 TrueTrust Ltd20 An Example Condition Statement <Constant Type="TimePeriod" Value= "DaysOfWeek=0111110 End=2001-10-00 LocalOrUTC=local Start=2001-06-00 TimeOfDay=T090000/T170000"/>
21
Wednesday, June 03, 2015 © 2001 TrueTrust Ltd21 Creating Your Own Policy If an XML expert, simply use your favourite text editor Or use an XML tool such as Xeena from IBM Alphaworks
22
Wednesday, June 03, 2015 © 2001 TrueTrust Ltd22 The Privilege Allocator A tool for creating Attribute Certificates
23
Wednesday, June 03, 2015 © 2001 TrueTrust Ltd23 The PERMIS API Four Simple Calls: Constructor for API, GetCreds, Decision and Shutdown Written in Java and based approximately on the OpenGroup’s AZN API Constructor –Pass the name of the administrator, the OID of the policy and the URLs of the LDAP repositories –API Object reads in the Policy AC and verifies its signature and OID
24
Wednesday, June 03, 2015 © 2001 TrueTrust Ltd24 API State Transition Diagram Initialised No API Object Subject Known Construct GetCreds Shutdown Decision GetCreds
25
Wednesday, June 03, 2015 © 2001 TrueTrust Ltd25 The PERMIS API (cont) GetCreds –Pass the authenticated name (LDAP DN) of the subject –Pull mode, GetCreds retrieves the subject’s ACs –Push mode, ACs are passed to GetCreds –ACs are validated and roles extracted Decision –Pass the target name, the action, and the parameters of the subject’s request –Decision checks the request against the policy and returns Granted or Denied Shutdown –Terminates the use of this policy
26
Wednesday, June 03, 2015 © 2001 TrueTrust Ltd26 Privilege Allocator LDAP directory Attribute Certificates + ACRLs SOA Remote Application User Privilege Policy INTERNET INTRANET PKI Certifies PK Certs+ PKCRLs Authorises Putting it altogether - Allocating Privileges LDAP directory
27
Wednesday, June 03, 2015 © 2001 TrueTrust Ltd27 Privilege Creation Steps SOA defines Privilege Policy using Privilege Allocator Privilege Policy is stored in LDAP directory as self signed Attribute Certificate SOA allocates privileges to user, in accordance with the Privilege Policy SOA can revoke user privileges SOA can update Privilege Policy
28
Wednesday, June 03, 2015 © 2001 TrueTrust Ltd28 E- Commerce Application Server LDAP directory Privilege Policy ACs + ACRLs + PK CRLs Remote Application User Digitally Signed Request (SSL or S/MIME) Privilege Verifier INTERNET INTRANET Granting User Access Application Gateway Accesses using privileges granted the user LDAP directory
29
Wednesday, June 03, 2015 © 2001 TrueTrust Ltd29 Example Applications Salford City Council - Electronic Tendering Barcelona Municipality - Car Parking Fines Bologna Comune - architects submitting building plans Electronic Prescription Processing
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.