3.1.4 has a weight of -1 points
(Access Control Family) 4/22
Separate the duties of individuals to reduce the risk of malevolent activity without collusion
Video:
Example of Sysytem Security Plan (SSP):
System Security Plan (SSP): Control for Separation of Duties through Role-Based Authentication and Control
1. Control Title: Separation of Duties using Role-Based Authentication and Control (RBAC)
2. Purpose: To ensure that system and data access rights are distributed among personnel in a way that reduces risk and prevents a single individual from executing security-sensitive operations without oversight.
3. Implementation:
3.1. General Approach: The company has recognized the significance of separating duties to minimize risks associated with fraudulent or unauthorized activities. To achieve this, the company has implemented role-based authentication and control (RBAC).
3.2. Technological Implementation:
-
Azure Active Directory (AAD): The company uses Azure Active Directory to establish and enforce RBAC assignments. Azure AD’s inherent capabilities allow for fine-grained control, ensuring that users only have the specific access rights necessary for their roles.
-
Group Policy (On-Premise): For on-premise systems, Group Policy is employed as an additional means to enforce separation of duties, especially for security-sensitive tasks.
3.3. Role Review and Maintenance:
- Monthly Review: Every month, the company reviews roles and permissions, leveraging both the company personnel and technology list. This review ensures that access rights remain aligned with each employee’s specific job functions and that no individual has excessive permissions.
3.4. Separation of Duties Principle:
- Risk-Level and Activity Collision: At its core, the control aims to reduce the risk of a single individual performing security-sensitive activities without oversight. The system is structured to require collaboration (from multiple individuals) for tasks that are deemed highly sensitive.
4. Roles and Responsibilities:
4.1. IT Department: Ensures the proper configuration of Azure AD and Group Policy, and periodically confirms their effectiveness.
4.2. Human Resources: Provides the IT Department with up-to-date personnel lists, job functions, and role changes to ensure accurate role assignments.
4.3. Management: Reviews and approves any changes to RBAC settings, ensuring alignment with organizational needs and security best practices.
5. Periodic Review and Updates:
The company commits to regularly reviewing and updating this control, at least annually, to adapt to changing organizational needs, technological advances, and emerging threats.
6. Conclusion:
By implementing the separation of duties through role-based authentication and control, the company ensures that potential risks associated with unauthorized or malicious activities are significantly reduced. It emphasizes the importance of collaborative oversight, particularly for security-sensitive operations.
7. Approvals:
-
CISO: ____________________________ Date: ________
-
Head of IT: _______________________ Date: ________
-
Head of HR: _______________________ Date: ________
Example of Plan of Action and Milestones ( POA & M):
Plan of Action & Milestones (POA&M) for Separation of Duties through RBAC
1. Introduction:
This POA&M addresses security weaknesses related to the implementation of separation of duties using role-based authentication and control (RBAC) within our organization’s systems.
2. Identified Weaknesses:
2.1. Incomplete Implementation of Azure AD RBAC: Some system components are not yet integrated with Azure AD.
2.2. Infrequent Role Reviews: Currently, reviews of role assignments are irregular, leading to potential misalignments.
2.3. Lack of Training: Employees and IT personnel are not fully trained on RBAC principles and Azure AD functionalities.
3. Plan of Action:
3.1. Complete Azure AD Integration:
- Task: Integrate remaining system components with Azure AD.
- Responsible Party: IT Department
- Estimated Completion Date: MM/DD/YYYY
- Resources Needed: Dedicated IT personnel, Azure AD training materials
3.2. Standardize Monthly Role Reviews:
- Task: Establish a monthly review process for role assignments using both the company personnel and technology list.
- Responsible Party: HR and IT Departments
- Estimated Completion Date: MM/DD/YYYY
- Resources Needed: Updated personnel lists, RBAC system logs
3.3. Conduct RBAC Training:
- Task: Organize training sessions for employees and IT personnel on RBAC principles and Azure AD functionalities.
- Responsible Party: Training Department in collaboration with IT
- Estimated Completion Date: MM/DD/YYYY
- Resources Needed: Training materials, external RBAC expert (if necessary)
4. Monitoring and Progress Tracking:
Regular status updates will be required from each responsible party. Progress will be discussed during quarterly security meetings.
5. Budget Estimate:
An estimated budget should be calculated for each action, considering the resources needed, potential external consultancy fees, and any software or hardware expenses.
6. Approvals:
-
CISO: ____________________________ Date: ________
-
Head of IT: _______________________ Date: ________
-
Head of HR: _______________________ Date: ________
-
Head of Training: _________________ Date: ________
Implement RBAC using Azure:
Here’s a guide to help you implement RBAC using Azure:
-
Understand Azure RBAC Roles:
- Azure provides several built-in RBAC roles. Examples include Owner, Contributor, Reader, and User Access Administrator. Each role has a specific set of permissions.
- You can also create custom roles if the built-in roles don’t meet your specific needs.
-
Access Azure Portal:
- Navigate to the Azure Portal.
-
Select a Resource:
- In the Azure Portal, go to the resource you want to manage access for. This could be a subscription, a resource group, or an individual resource like a virtual machine.
- In the left-hand menu, select “Access control (IAM).”
-
Assign a Role:
- Click “+ Add” and then “Add role assignment.”
- Use the “Role” dropdown to select the appropriate role (e.g., Reader, Contributor).
- Use the “Assign access to” dropdown to determine what this role applies to (e.g., User, Group, Service Principal).
- In the “Select” field, find the user or group you wish to assign this role to and select them.
- Click “Save.”
-
Creating Custom Roles (if needed):
- If the built-in roles don’t match your needs, you can define custom roles.
- Use Azure PowerShell, Azure CLI, or the REST API to define custom roles. Within these tools, you can specify the exact permissions (actions, notActions, dataActions, notDataActions) you want the custom role to have.
-
Role Assignments:
- Once a role is assigned to a user, group, or service principal, that entity is granted access to Azure resources based on the permissions defined in the role.
-
Regularly Audit & Review:
- Regularly review role assignments to ensure users have appropriate access levels. Consider implementing a periodic review process.
-
Conditional Access (Advanced):
- For more granular control, you can use Azure Active Directory (Azure AD) Conditional Access to enforce controls on the access to apps in your environment based on specific conditions from a central location.
-
Integration with Azure AD:
- Azure RBAC is deeply integrated with Azure AD, which allows you to use group memberships, self-service group management, and privileged identity management for more sophisticated access management.
-
Monitor Access & Activity:
- Use Azure Activity Log to monitor who did what and when. This will give you insights into operations that were taken on specific resources.
Implement RBAC using Google:
Here’s a guide to help you implement RBAC using Google Coud Paltform:
-
Access Google Cloud Console:
- Log in to the Google Cloud Console.
-
Navigate to IAM & Admin:
- On the navigation menu (hamburger icon on the top-left corner), click on “IAM & Admin”.
-
Select Your Project:
- Ensure you are in the right GCP project for which you want to manage access.
-
Add or Edit Members:
- Click on the “ADD” button to add a new member or select an existing member to edit.
- Enter the member’s email address (this can be a Google account, a Google group, a service account, or even a G Suite domain).
- In the “Role” dropdown, select a predefined role that describes the permissions you want to grant. For instance, you can assign roles like “Compute Engine > Compute Admin” or “Storage > Storage Object Viewer”. These roles grant specific sets of permissions.
- Click “Save” when you’re done.
-
Custom Roles:
- If the predefined roles do not fit your needs, you can create custom roles.
- Navigate to “IAM & Admin > Roles” and click “CREATE ROLE”.
- Define the permissions you want this custom role to have.
-
Organization-Level Roles:
- If you manage multiple GCP projects and want to set roles across them, you can do so by selecting the organization level in the IAM page, rather than a specific project. This is especially useful for large businesses.
-
Service Accounts:
- For applications, use service accounts and assign roles to these accounts. A service account represents a non-human user that needs to authenticate and be authorized to access data across GCP services.
-
Best Practices:
- Always follow the principle of least privilege: grant only the permissions necessary to perform a task.
- Regularly review and audit roles and permissions, ensuring no outdated permissions exist.
- Use Google groups to manage roles for teams. Instead of assigning a role to individual users, assign it to a Google group and manage membership within that group.
-
Test Access:
- It’s essential to periodically test if the roles are functioning as expected. Ensure that those with access can perform their tasks and those without access are correctly restricted.
-
Monitoring & Logging:
- Utilize Google Cloud’s monitoring and logging tools, like Cloud Audit Logs, to keep an eye on who did what and when.
- Training:
- Ensure your team is educated about the importance of access controls and the potential risks associated with misconfiguration.
Implementing RBAC in Google Cloud Platform ensures that you securely manage access to your GCP resources, allowing users to only perform actions that align with their roles and responsibilities.
RELEVANT INFORMATION:
This requirement limits exposure when operating from within privileged accounts or roles. The inclusion of roles addresses situations where organizations implement access control policies such as role-based access control and where a change of role provides the same degree of assurance in the change of access authorizations for the user and all processes acting on behalf of the user as would be provided by a change between a privileged and non-privileged account.
Why this is important:
Using non-privileged accounts or roles for non-security functions is a critical practice that helps protect sensitive information and maintain the security of systems. When organizations implement this approach, they reduce the risk of unauthorized access and potential security breaches. By assigning specific roles to individuals for different tasks, instead of relying on privileged accounts, the principle of least privilege is upheld. This means that individuals have access only to what they need to perform their jobs, minimizing the potential for misuse or abuse of privileges. It also aligns with best practices such as role-based access control, ensuring a structured and consistent approach to access management. By separating security and non-security functions, organizations create an additional layer of defense, strengthening the overall security posture and safeguarding valuable data from potential threats. This practice demonstrates a commitment to maintaining confidentiality, integrity, and security across organizational systems.
Resources to consider:
Security Policy Document:
This comprehensive document outlines the organization’s security policies and procedures, including information system access controls and the specific measures implemented, such as password protection, multi-factor authentication, and device access controls. It should also cover consequences of unauthorized access and the importance of user training and awareness.
Asset Inventory and Access Control Sheet:
Create a spreadsheet that lists all information system resources in your organization, such as laptops, desktops, servers, network devices, printers, scanners, mobile devices, and paper documents. Alongside each resource, include information about authorized users, access rights, and any access restrictions.
User Account Management Log:
Maintain a log to track user account creation, modification, and removal. Include details like the date of account creation, purpose, and the individual responsible for approving the account.
Password and Multi-Factor Authentication Policy:
Combine the password policy and multi-factor authentication policy into a single document. Outline the organization’s password requirements, including complexity, length, expiration, and regular password change, as well as the implementation of multi-factor authentication for an extra layer of security.
Process and Script Accountability Log:
Maintain a log that associates automated scripts and processes with the specific authorized user who initiated them. This ensures accountability and prevents the use of generic accounts for critical processes.
Device Access Control and VPN Policy:
Merge the device access control and VPN configuration documents into a single policy. Detail the measures for controlling device access, authentication mechanisms, and VPN configuration, including which devices are allowed to connect and the authentication methods used.
Access Control Review and Monitoring Schedule:
Create a schedule for periodic reviews of access controls, including the process for adding, modifying, or revoking access rights based on personnel changes or business needs. Also, document the monitoring mechanisms implemented to track access to the information system, including logs and reports of access attempts and unusual activities.
User Training and Awareness Materials:
Prepare training materials and conduct regular sessions for authorized users. Document the topics covered, the date of the training, and the attendees.