Introduction: The Gatekeeper of Access
In Lessons 6.1 and 6.2, we established the foundations of Identity and Access Management (IAM) and explored authentication mechanisms in financial institutions. We examined the core IAM concepts of identity, authentication, authorization, and accountability. We analyzed the identity lifecycle from registration to deprovisioning. We also explored authentication mechanisms including passwords, multi-factor authentication, biometrics, and certificate-based authentication. Each of these components ensures that users, systems, and devices are properly identified and verified before accessing resources.
However, authentication alone is insufficient. Once identity is verified, the system must determine what access is granted. This is the domain ofΒ authorization. Authorization is the process of determining what resources a verified identity can access and what actions they can perform. It is the gatekeeper of access, ensuring that users only access the resources they need and perform only the actions they are authorized to perform.
In financial institutions, authorization is of paramount importance because it:
-
Protects Sensitive Data:Β Ensures that customer information, financial data, and trade secrets are only accessible to authorized individuals.
-
Prevents Fraud:Β Restricts access to financial systems and transactions to authorized users.
-
Ensures Compliance:Β Meets regulatory requirements for access control (GLBA, SOX, GDPR, NYDFS, PCI DSS).
-
Enforces Least Privilege:Β Limits access to only what is necessary for each role, reducing the attack surface.
This lesson provides a comprehensive analysis of authorization and access control models. We begin by examining theΒ Access Control Models: Role-Based Access Control (RBAC), Attribute-Based Access Control (ABAC), Discretionary Access Control (DAC), and Mandatory Access Control (MAC). We derive theΒ Access Control Security Score:Β A_CS = P_olicy * E_nforcement * A_uditing.
We then examineΒ Role-Based Access Control (RBAC)Β in depth, including role engineering, role assignment, and role management. We derive theΒ RBAC Effectiveness Score:Β R_ES = R_oles * P_ermissions * U_sers.
We also examineΒ Attribute-Based Access Control (ABAC)Β , including attribute types, policy definition, and policy enforcement. We derive theΒ ABAC Effectiveness Score:Β A_ES = A_ttributes * P_olicies * E_nforcement.
We also examineΒ Access Control Models in Financial Institutions, including implementation considerations, best practices, and compliance requirements. We derive theΒ Access Control Compliance Score:Β A_CC = R_egulations * P_olicies * M_onitoring.
By the end, you will have a complete understanding of authorization and access control models, and be able to design and implement access control systems for financial institutions.
Learning Objectives
Upon completion of this lesson, you will be able to:
-
AnalyzeΒ theΒ Access Control Models: RBAC, ABAC, DAC, and MAC.
-
DeriveΒ theΒ Access Control Security Score:Β
A_CS = P_olicy * E_nforcement * A_uditing. -
AnalyzeΒ Role-Based Access Control (RBAC)Β : Role engineering, assignment, and management.
-
DeriveΒ theΒ RBAC Effectiveness Score:Β
R_ES = R_oles * P_ermissions * U_sers. -
AnalyzeΒ Attribute-Based Access Control (ABAC)Β : Attributes, policies, and enforcement.
-
DeriveΒ theΒ ABAC Effectiveness Score:Β
A_ES = A_ttributes * P_olicies * E_nforcement. -
AnalyzeΒ Access Control ModelsΒ in financial institutions.
-
DeriveΒ theΒ Access Control Compliance Score:Β
A_CC = R_egulations * P_olicies * M_onitoring.
Part 1: Access Control Models
1.1 The Access Control Definition
Access control is the process of determining what resources a verified identity can access and what actions they can perform.
Access Control = {Subject, Object, Operation, Authorization}
1.2 The Four Core Models
Access Control Models = {RBAC, ABAC, DAC, MAC}
1.3 Model Comparison
| Model | Description | Granularity | Complexity | Use Case |
|---|---|---|---|---|
| RBAC | Role-Based Access Control | Medium | Medium | Employees by job role |
| ABAC | Attribute-Based Access Control | High | High | Dynamic policies |
| DAC | Discretionary Access Control | Low | Low | Resource owner control |
| MAC | Mandatory Access Control | High | High | Government, military |
1.4 Role-Based Access Control (RBAC)
Definition:Β RBAC grants access based on the roles that users hold within the organization.
RBAC = {Roles, Permissions, Users}
Key Concepts:
| Concept | Description | Example |
|---|---|---|
| User | An individual or system | John Doe, System Account |
| Role | A job function or position | Teller, Manager, Trader |
| Permission | An action on a resource | Read, Write, Execute |
| Role Assignment | User assigned to a role | John Doe assigned Teller role |
| Permission Assignment | Role granted permissions | Teller role has Read permission |
RBAC Principles:
| Principle | Description | Implementation |
|---|---|---|
| Role Engineering | Identify and define roles | Role analysis, role mining |
| Least Privilege | Grant minimum necessary permissions | Role-based permissions |
| Separation of Duties | No single role has complete control | Role segregation |
| Role Management | Manage roles lifecycle | Role creation, modification, deletion |
1.5 Attribute-Based Access Control (ABAC)
Definition:Β ABAC grants access based on attributes of the subject, object, environment, and action.
ABAC = {Attributes, Policies, Enforcement}
Attribute Types:
| Attribute Type | Description | Examples |
|---|---|---|
| Subject Attributes | Attributes of the user | Role, department, clearance level |
| Object Attributes | Attributes of the resource | Data classification, owner |
| Environment Attributes | Attributes of the environment | Time, location, device |
| Action Attributes | Attributes of the action | Read, Write, Execute |
ABAC Policies:
| Policy Element | Description | Example |
|---|---|---|
| Rule | A condition that must be satisfied | Role = Manager AND Location = Office |
| Policy | A set of rules | Access allowed if rules are satisfied |
| Policy Set | A set of policies | Multiple policies combined |
1.6 Discretionary Access Control (DAC)
Definition:Β DAC grants access based on the discretion of the resource owner.
DAC = {Owner, Permissions, Access Control Lists}
Key Concepts:
| Concept | Description | Example |
|---|---|---|
| Owner | The creator or owner of the resource | File owner, document owner |
| Access Control List (ACL) | List of users and their permissions | Read: John, Write: Mary |
| Permission Granting | Owner grants permissions | Owner adds user to ACL |
1.7 Mandatory Access Control (MAC)
Definition:Β MAC grants access based on system-wide security labels and clearances.
MAC = {Security Labels, Clearances, Policy}
Key Concepts:
| Concept | Description | Example |
|---|---|---|
| Security Label | Classification level of resource | Top Secret, Secret, Confidential |
| Clearance | Security clearance of user | Top Secret clearance |
| Policy | System-wide access policy | No read up, no write down |
1.8 The Access Control Security Score
The Access Control Security Score quantifies the security of access control:
A_CS = P_olicy * E_nforcement * A_uditing
Where:
-
P_olicyΒ is the Policy Score (0-1) -
E_nforcementΒ is the Enforcement Score (0-1) -
A_uditingΒ is the Auditing Score (0-1)
| Component | Description | Scoring Factors |
|---|---|---|
| Policy (P) | Quality of access control policies | Completeness, clarity, currency |
| Enforcement (E) | Effectiveness of enforcement | Implementation, monitoring |
| Auditing (A) | Effectiveness of auditing | Coverage, frequency, quality |
Access Control Models (Visual): βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | | | βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | | β Role-Based Access Control (RBAC) β | | β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ£ | | β Access based on job roles β | | β User β Role β Permission β | | β Granularity: Medium β | | β Complexity: Medium β | | β Example: Teller, Manager, Trader β | | βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | | | | βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | | β Attribute-Based Access Control (ABAC) β | | β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ£ | | β Access based on attributes β | | β Subject + Object + Environment + Action β Decision β | | β Granularity: High β | | β Complexity: High β | | β Example: Role = Manager AND Location = Office β | | βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | | | | βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | | β Discretionary Access Control (DAC) β | | β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ£ | | β Access based on owner discretion β | | β Owner grants permissions β | | β Granularity: Low β | | β Complexity: Low β | | β Example: File permissions, Access Control Lists β | | βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | | | | βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | | β Mandatory Access Control (MAC) β | | β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ£ | | β Access based on security labels β | | β Labels + Clearances + Policy β Decision β | | β Granularity: High β | | β Complexity: High β | | β Example: Top Secret, Secret, Confidential β | | βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | | | | Formula: A_CS = P_olicy * E_nforcement * A_uditing β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Part 2: Role-Based Access Control (RBAC)
2.1 The RBAC Definition
RBAC grants access based on the roles that users hold within the organization.
RBAC = {Roles, Permissions, Users, Assignments}
2.2 RBAC Components
| Component | Description | Example |
|---|---|---|
| User | An individual or system | John Doe, System Account |
| Role | A job function or position | Teller, Manager, Trader |
| Permission | An action on a resource | Read, Write, Execute |
| User-Role Assignment | User assigned to a role | John Doe assigned Teller role |
| Role-Permission Assignment | Role granted permissions | Teller role has Read permission |
2.3 Role Engineering
Definition:Β Role engineering is the process of identifying and defining roles based on business functions.
Role Engineering = {Role Identification, Role Analysis, Role Definition}
Role Engineering Steps:
| Step | Description | Key Activities |
|---|---|---|
| 1. Role Identification | Identify roles in the organization | Job descriptions, functional analysis |
| 2. Role Analysis | Analyze role requirements | Access requirements, permissions |
| 3. Role Definition | Define roles and permissions | Role definitions, permission assignments |
| 4. Role Validation | Validate roles with stakeholders | Review, approval |
2.4 The RBAC Effectiveness Score
The RBAC Effectiveness Score quantifies the effectiveness of RBAC:
R_ES = R_oles * P_ermissions * U_sers
Where:
-
R_olesΒ is the Role Score (0-1) -
P_ermissionsΒ is the Permission Score (0-1) -
U_sersΒ is the User Score (0-1)
| Component | Description | Scoring Factors |
|---|---|---|
| Roles (R) | Quality of role definitions | Completeness, clarity, currency |
| Permissions (P) | Quality of permission assignments | Least privilege, separation of duties |
| Users (U) | Quality of user-role assignments | Accuracy, timeliness, reviews |
2.5 RBAC Best Practices
| Best Practice | Description | Benefit |
|---|---|---|
| Role Engineering | Identify and define roles properly | Accurate access control |
| Least Privilege | Grant minimum necessary permissions | Reduced attack surface |
| Separation of Duties | No single role has complete control | Fraud prevention |
| Regular Reviews | Review roles and assignments regularly | Maintain accuracy |
| Automation | Automate role management | Efficiency, accuracy |
RBAC Architecture (Visual): βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | | | Users β | βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β | β β’ John Doe (Teller) β β | β β’ Mary Smith (Manager) β β | β β’ Bob Johnson (Trader) β β | ββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββββββββββββββββ β | β | | βΌ | | Roles β | βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β | β β’ Teller Role β β | β β’ Manager Role β β | β β’ Trader Role β β | ββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββββββββββββββββ β | β | | βΌ | | Permissions β | βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β | β β’ Teller: Read Customer Data, Process Transactions β β | β β’ Manager: Read Customer Data, Approve Transactions β β | β β’ Trader: Execute Trades, View Market Data β β | βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β | | | Formula: R_ES = R_oles * P_ermissions * U_sers β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Part 3: Attribute-Based Access Control (ABAC)
3.1 The ABAC Definition
ABAC grants access based on attributes of the subject, object, environment, and action.
ABAC = {Attributes, Policies, Enforcement}
3.2 ABAC Components
| Component | Description | Examples |
|---|---|---|
| Subject Attributes | Attributes of the user | Role, department, clearance level |
| Object Attributes | Attributes of the resource | Data classification, owner |
| Environment Attributes | Attributes of the environment | Time, location, device |
| Action Attributes | Attributes of the action | Read, Write, Execute |
3.3 ABAC Policies
Policy Structure:
Policy = {Rule, Effect}
Policy Example:
If (Role = Manager AND Department = Finance AND Time = Business Hours) Then Allow (Read, Write) Else Deny (All)
3.4 The ABAC Effectiveness Score
The ABAC Effectiveness Score quantifies the effectiveness of ABAC:
A_ES = A_ttributes * P_olicies * E_nforcement
Where:
-
A_ttributesΒ is the Attribute Score (0-1) -
P_oliciesΒ is the Policy Score (0-1) -
E_nforcementΒ is the Enforcement Score (0-1)
| Component | Description | Scoring Factors |
|---|---|---|
| Attributes (A) | Quality of attribute definitions | Coverage, accuracy, currency |
| Policies (P) | Quality of policy definitions | Completeness, clarity, correctness |
| Enforcement (E) | Quality of policy enforcement | Implementation, monitoring |
3.5 ABAC Best Practices
| Best Practice | Description | Benefit |
|---|---|---|
| Attribute Standardization | Standardize attribute definitions | Consistency |
| Policy Simplification | Keep policies simple | Manageability |
| Regular Reviews | Review policies regularly | Accuracy |
| Automation | Automate policy enforcement | Efficiency |
| Monitoring | Monitor policy effectiveness | Improvement |
ABAC Architecture (Visual): βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | | | Subject Attributes β | βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β | β β’ Role: Manager β β | β β’ Department: Finance β β | β β’ Clearance: Confidential β β | ββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββββββββββββββββ β | β | | βΌ | | Object Attributes β | βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β | β β’ Classification: Confidential β β | β β’ Owner: Finance Department β β | β β’ Sensitivity: High β β | ββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββββββββββββββββ β | β | | βΌ | | Environment Attributes β | βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β | β β’ Time: 9:00-17:00 β β | β β’ Location: Office β β | β β’ Device: Company-issued β β | ββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββββββββββββββββ β | β | | βΌ | | Action Attributes β | βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β | β β’ Action: Read, Write β β | β β’ Operation: View, Edit β β | β β’ Scope: Finance Data β β | ββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββββββββββββββββ β | β | | βΌ | | Policy Enforcement β | βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β | β If (Role = Manager AND Department = Finance AND β β | β Time = Business Hours AND Location = Office) β β | β Then Allow (Read, Write) β β | β Else Deny (All) β β | βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β | | | Formula: A_ES = A_ttributes * P_olicies * E_nforcement β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Part 4: Access Control in Financial Institutions
4.1 Regulatory Requirements
| Regulation | Access Control Requirement |
|---|---|
| GLBA | Safeguards Rule: Information security program |
| SOX | Section 404: Internal controls |
| GDPR | Article 32: Security of processing |
| NYDFS | 500.07: Access privileges |
| PCI DSS | Requirement 7: Restrict access to cardholder data |
4.2 Access Control Best Practices
| Best Practice | Description | Implementation |
|---|---|---|
| Least Privilege | Grant minimum necessary permissions | RBAC, ABAC |
| Separation of Duties | No single role has complete control | Role segregation |
| Regular Access Reviews | Review and certify access | Quarterly/Annually |
| Automated Provisioning | Automate access provisioning | Workflow automation |
| Monitoring | Monitor access and detect anomalies | SIEM, UEBA |
4.3 The Access Control Compliance Score
The Access Control Compliance Score quantifies compliance with access control requirements:
A_CC = R_egulations * P_olicies * M_onitoring
Where:
-
R_egulationsΒ is the Regulation Score (0-1) -
P_oliciesΒ is the Policy Score (0-1) -
M_onitoringΒ is the Monitoring Score (0-1)
| Component | Description | Scoring Factors |
|---|---|---|
| Regulations (R) | Coverage of regulatory requirements | Breadth, completeness |
| Policies (P) | Quality of access control policies | Completeness, clarity, currency |
| Monitoring (M) | Quality of monitoring | Coverage, frequency, quality |
Access Control in Financial Institutions (Visual): βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | | | Regulatory Requirements β | βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β | β β’ GLBA: Information security program β β | β β’ SOX: Internal controls β β | β β’ GDPR: Security of processing β β | β β’ NYDFS: Access privileges β β | β β’ PCI DSS: Restrict access to cardholder data β β | βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β | | | Access Control Best Practices β | βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β | β β’ Least Privilege β β | β β’ Separation of Duties β β | β β’ Regular Access Reviews β β | β β’ Automated Provisioning β β | β β’ Monitoring β β | βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β | | | Formula: A_CC = R_egulations * P_olicies * M_onitoring β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Summary and Bridge to Lesson 6.4
We have now completed the comprehensive analysis of authorization and access control models. You have learned:
-
Access Control Models:Β RBAC, ABAC, DAC, and MAC.
-
Access Control Security Score:Β
A_CS = P_olicy * E_nforcement * A_uditing. -
Role-Based Access Control (RBAC):Β Role engineering, assignment, and management.
-
RBAC Effectiveness Score:Β
R_ES = R_oles * P_ermissions * U_sers. -
Attribute-Based Access Control (ABAC):Β Attributes, policies, and enforcement.
-
ABAC Effectiveness Score:Β
A_ES = A_ttributes * P_olicies * E_nforcement. -
Access Control in Financial Institutions:Β Regulatory requirements and best practices.
-
Access Control Compliance Score:Β
A_CC = R_egulations * P_olicies * M_onitoring.
InΒ Lesson 6.4, we will exploreΒ Privileged Access Management (PAM)Β for financial institutions, including privileged accounts, privileged access, and privileged account security.