Chapter 7
IN THIS CHAPTER
Controlling access to information, systems, devices, and facilities
Managing identification and authentication techniques
Integrating identity and access management in the cloud and on-premises
Understanding data access control mechanisms
Defending against access control attacks
Managing the identity and access provisioning lifecycle
Identity and access management (IAM) is often the first — and sometimes the only — line of defense between adversaries and sensitive information. In fact, in the modern cloud era with ubiquitous mobile computing and anywhere, anytime access to applications and data, many security practitioners now refer to identity as “the new perimeter.” Security professionals must have a thorough understanding of the concepts and technologies involved. This domain represents 13 percent of the CISSP certification exam.
Identity and access management is a collection of processes and technologies that are used to control the access to critical assets. Together with other critical controls, IAM is a part of the core of information security: When implemented correctly, unauthorized persons are not permitted to access critical assets. Breaches and other abuses of information and assets are less likely to occur.
Security professionals must fully understand identity and access management concepts (including control types and authentication, authorization, and accounting), system access controls (including identification and authentication techniques, methodologies and implementation, and methods of attack), and data access controls (including access control techniques and models) within centralized, decentralized, and cloud-based computing environments. We must also understand the techniques that attackers use to compromise or bypass access management controls, and know how to strengthen those controls.
The purpose of identity and access management systems and processes is the management of access to information, systems, devices, and facilities. A variety of controls are used for this purpose in several contexts that are discussed in this section. Chapter 3 contains a discussion of the types and categories of controls.
Controlling access to information assets is primarily achieved through logical controls that determine which persons or systems (known as subjects) are permitted to access which files, directories, databases, tables, records, or fields (known as objects). The mechanisms used to control access to information include
Controlling access to systems and devices is achieved mainly through mechanisms built into those systems, including:
Systems and devices are far more than servers and routers. Many kinds of business and consumer products are marketed as “smart” devices and equipped with Ethernet, Wi-Fi, and Bluetooth connectivity. When pondering systems and devices, be sure to include the vast array of things that are connected to networks, including the following:
The purpose of controlling access to facilities is to ensure the safety of personnel who work in those facilities, as well as the protection of information systems and other assets located there. Controlling access to facilities is accomplished by different means, including:
Many other aspects of physical security are discussed in Chapter 5.
We are all witness to a staggering variety of devices that are now embedded with TCP/IP, complete with the addition of “smart” to the device itself. We now have “smart” automobiles, “smart” televisions, and “smart” appliances. This revolution has progressed into wearable and life safety products, such as vital signs (heart rate, respiration, and so on) monitoring, as well as insulin pumps, IV pumps, patient monitoring, pacemakers, as well as automobiles and aircraft navigation and control.
Security experts have observed that many of these new “smart” products have security capabilities that range from well designed to poorly designed to outright absent. But never has identity and access management been so important: Exceptionally good authentication and authorization are needed for all of these new types of devices, to prevent unauthorized access to them. The consequences of doing this wrong can literally cost someone his or her life.
The core activity within identity and access management (IAM) is the management of identities, including people, devices, and services. In this section, we describe the processes and technologies in use today.
Implementing identity management begins with a plan. An identity and access management (IAM) system in an organization is a complex, distributed system that touches systems, networks, and applications, and also controls access to assets. An IAM system also includes the business processes that work together with IAM technologies and personnel to get the job done.
An IAM system probably is the most important function that an organization will ever implement. Next to the network itself, the IAM system typically is the most critical in an environment, because the IAM system controls access to all systems and applications.
The concept of single sign-on (SSO) addresses a common problem for both users and security administrators. Every account that exists in a system, network, or application is a potential point of unauthorized access. Multiple accounts that belong to a single user represent an even greater risk:
At first glance (alas), SSO seems the “perfect” solution that users and security administrators seek. SSO allows a user to present a single set of logon credentials, typically to an authentication server, which then transparently logs the user into all other enterprise systems and applications for which that user is authorized. Of course, SSO does have some disadvantages, which include
SSO is commonly implemented by various protocols and solutions, including the following.
The de facto protocol for authentication, SAML is used for facilitating user authentication across systems and among organizations, through the exchange of authentication and authorization information between organizations. SAML is the glue that is used to make most single sign-on (SSO) systems work.
As its full name suggests, SAML is an XML markup language. XML is becoming a standard method for exchanging information between dissimilar systems.
Kerberos, commonly used in the Sun Network File System (NFS) and Microsoft Windows, is perhaps the most popular ticket-based symmetric key authentication protocol in use today.
The CISSP exam requires a general understanding of Kerberos operation. Unfortunately, Kerberos is a complex protocol that has many different implementations and no simple explanation. The following step-by-step discussion is a basic description of Kerberos operation:
See Chapter 5 for more information about symmetric key cryptography.
Lightweight Directory Access Protocol (LDAP) is both an IP protocol and a data model. LDAP (pronounced EL-dap) is used to support authentication and directory functions for both people and resources. Several vendors have implemented LDAP, including:
You can also find several open-source versions of LDAP available, including OpenLDAP and tinyldap.
The Remote Authentication Dial-In User Service (RADIUS) protocol is an open-source, client-server networking protocol — defined in more than 25 current IETF (Internet Engineering Task Force) RFCs (Request For Comments) — that provides authentication, authorization, and accounting (AAA) services. RADIUS is an Application Layer protocol that utilizes User Datagram Protocol (UDP) packets for transport. UDP is a connection-less protocol, which means it’s fast but not as reliable as other transport protocols.
RADIUS is commonly implemented in network service provider (NSP) networks, as well as corporate remote access service (RAS) and virtual private networks (VPNs). RADIUS is also becoming increasingly popular in corporate wireless networks. A user provides username/password information to a RADIUS client by using PAP or CHAP. The RADIUS client encrypts the password and sends the username and encrypted password to the RADIUS server for authentication.
Note: Passwords exchanged between the RADIUS client and RADIUS server are encrypted, but passwords exchanged between the workstation client and the RADIUS client are not necessarily encrypted — if using PAP authentication, for example. If the workstation client happens to also be a RADIUS client, all password exchanges are encrypted, regardless of the authentication protocol used.
Remote Access Service (RAS) servers utilize the Point-to-Point Protocol (PPP) to encapsulate IP packets and establish dial-in connections over serial and ISDN links. PPP incorporates the following three authentication protocols:
PAP: The Password Authentication Protocol (PAP) uses a two-way handshake to authenticate a peer to a server when a link is initially established. PAP transmits passwords in clear text and provides no protection from replay attacks (in which part of a session is captured or recorded, then played back to the system) or brute force attacks.
A two-way handshake refers to a communications session in which the communicating devices, for example a remote workstation and a remote access server. The connection is established whereby one device sends an initial TCP SYN (Synchronize) packet to the other, and the other responds by sending an ACK (Acknowledgment) packet to indicate that the connection has been accepted.
The Terminal Access Controller Access Control System (TACACS) is a remote authentication control protocol, originally developed for the MILNET (U.S. Military Network), which provides AAA services. The original TACACS protocol has been significantly enhanced, as XTACACS (no longer used) and TACACS+ (which is the most common implementation of TACACS). However, TACACS+ is a completely new protocol and therefore isn’t backward-compatible with either TACACS or XTACACS. TACACS+ is TCP based on (port 49) and supports practically any authentication mechanism (PAP, CHAP, MS-CHAP, EAP, token cards, Kerberos, and so on). The major advantages of TACACS+ are its wide support of various authentication mechanisms and granular control of authorization parameters. TACACS+ can also use dynamic passwords; TACACS uses static passwords only.
The original TACACS protocol is often used in organizations for simplifying administrative access to network devices such as firewalls and routers. TACACS facilitates the use of centralized authentication credentials that are managed centrally, so that organizations don’t need to manage user accounts on every device.
This next-generation RADIUS protocol was developed to overcome some of RADIUS’s deficiencies, but it has yet to overcome RADIUS’s popularity, so it’s not yet widely implemented.
Like RADIUS, Diameter provides AAA services and is an open protocol standard defined in 11 current RFCs.
Unlike RADIUS, Diameter utilizes Transmission Control Protocol (TCP) and Stream Control Transmission Protocol (SCTP) packets to provide a more reliable, connection-oriented transport mechanism. Also, Diameter uses Internet Protocol Security (IPsec) or Transport Layer Security (TLS) to provide network security or transport layer security (respectively) — rather than PAP or CHAP (used in RADIUS) — to provide a more secure connection. See Chapter 6 for a complete discussion of TCP and SCTP, IPsec and TLS, and the OSI model.
Diameter isn’t fully backward-compatible with RADIUS, but it does provide an upgrade path for RADIUS-based environments. Diameter isn’t an acronym, but a pun on the term RADIUS. (In geometry, the diameter of a circle is twice its radius.)
The Secure European System and Applications in a Multi-vendor Environment (SESAME) project, developed by the European Computer Manufacturers Association (ECMA), is a ticket-based system, like Kerberos, with some additional functionality. It uses both symmetric and asymmetric cryptography to distribute secret keys and securely transmit data. By using public key cryptography, SESAME can securely communicate between different organizations or security domains. It incorporates a trusted authentication server at each host (known as a Privileged Attribute Server, or PAS), employs MD5 and CRC-32 one-way hash functions, and uses two separate certificates (known as a Privileged Attribute Certificates, or PACs) to provide authentication and define access privileges. However, SESAME also has some serious security flaws in its basic implementation, including these:
See Chapter 5 for more information on one-way hash functions, XOR functions, and key generation.
Developed by IBM, KryptoKnight is another example of a ticket-based SSO authentication and key distribution system that establishes peer-to-peer relationships between the Key Distribution Center (KDC) and its principals. In addition to user authentication with SSO, KryptoKnight provides two-party authentication, key distribution, and data integrity services. KryptoKnight is an extremely compact and flexible protocol that can be easily exported to other systems and applications, and it can function at any layer of the OSI model. Unlike Kerberos, KryptoKnight doesn’t require clock synchronization (it uses nonces instead).
A nonce is literally a number used once. Similar in concept to an initialization vector (see Chapter 5), a nonce is a randomly generated value (usually based on a timestamp) that can be used only once to authenticate a session.
As organizations move their infrastructure and applications to cloud-based service providers, organizations are opting to employ cloud-based authentication as well.
The protocols that are used for cloud-based access management such as SAML, RADIUS, and TACACS are still used. The primary difference with cloud-based access is that the directory servers are in the cloud — either in an organization’s cloud-based infrastructure, or through a cloud-based authentication service.
Decentralized access control systems keep user account information in separate locations, maintained by the same or different administrators, throughout an organization or enterprise. This type of system makes sense in extremely large organizations or in situations where very granular control of complex user access rights and relationships is necessary. In such a system, administrators typically have a more thorough understanding of their users’ needs and can apply the appropriate permissions — say, in a research and development lab or a manufacturing facility. However, decentralized access control systems also have various potential disadvantages. For example, organizations may apply security policies inconsistently across various systems, resulting in the wrong level of access (too much or not enough) for particular users; and if you need to disable numerous accounts for an individual user, the process becomes much more labor-intensive and error-prone.
Authentication is a two-step process that consists of identification and authentication (I&A). Identification is the means by which a user or system (subject) presents a specific identity (such as a username) to a system (object). Authentication is the process of verifying that identity. For example, a username/password combination is one common technique (albeit a weak one) that demonstrates the concepts of identification (username) and authentication (password).
Authentication is based on any of these factors:
Something you have, such as a smart card, security token, or smartphone: This concept is based on the assumption that only the owner of the account has the necessary key to unlock the account. Smart cards, USB tokens, smartphones, and key fobs are becoming more common, particularly in relatively secure organizations, such as government or financial institutions. A lot of online applications such as LinkedIn and Twitter have implemented multi-factor authentication as well, Although smart cards and tokens are somewhat more expensive and complex than other, less-secure authentication mechanisms, they’re not (usually) prohibitively expensive or overly complicated to implement, administer, and use. Smartphones that can receive text messages or run soft token apps such as Google Authenticator or Microsoft Authenticator are increasingly popular because of their lower cost and convenience. Regardless of the method chosen, all forms of multi-factor authentication provide a significant boost to authentication security. Of course, tokens, smartcards, and smartphones are sometimes lost, stolen, or damaged.
Because of the risks associated with text messages (such as mobile phone porting scams), the U.S. National Institute of Standards and Technology (NIST) has deprecated the use of text messages for multi-factor authentication.
The various identification and authentication (I&A) techniques that we discuss in the following sections include passwords/passphrases and PINs (knowledge-based); biometrics and behavior (characteristic-based); and one-time passwords, tokens, and single sign-on (SSO).
The identification component is normally a relatively simple mechanism based on a username or, in the case of a system or process, based on a computer or process name, Media Access Control (MAC) address, Internet Protocol (IP) address, or Process ID (PID). Identification requirements include only that it must uniquely identify the user (or system/process) and shouldn’t identify that user’s role or relative importance in the organization (the identification shouldn’t include labels such as accounting or CEO). Common, shared, and group accounts, such as root, admin, or system should not be permitted. Such accounts provide no accountability and are prime targets for malicious beings.
Single factor authentication requires only one of the three preceding factors discussed above (something you know, something you have, or something you are) for authentication. Common single factor authentication mechanisms include passwords and passphrases, one-time passwords, and personal identification numbers (PINs).
“A password should be like a toothbrush. Use it every day; change it regularly; and DON’T share it with friends.” –USENET
Passwords are easily the most common — and weakest — authentication credentials in use today. Although there are more advanced and secure authentication technologies available, including tokens and biometrics, organizations typically use those technologies as supplements to or in combination with — rather than as replacements for — traditional usernames and passwords.
A passphrase is a variation on a password; it uses a sequence of characters or words, rather than a single password. Generally, attackers have more difficulty breaking passphrases than breaking regular passwords because longer passphrases are generally more difficult to break than shorter, complex passwords. Passphrases also have the following advantages:
However, passphrases also have a downside:
You, as a CISSP candidate, should understand the general problems associated with passwords, as well as common password controls and management features.
Password/passphrase problems include that they’re
Passwords have the following login controls and management features that you should configure in accordance with an organization’s security policy and security best practices:
We’re sure that you know many of the following widely available and well-known guidelines for creating more secure passwords, but just in case, here’s a recap:
The problem with these guidelines is that they’re widely available and well known! In fact, attackers use some of these same guidelines to create their aliases or handles: super-geek becomes 5up3rg33k. Also, a password such as Qwerty12! technically satisfies these guidelines, but it’s not really a good password because it’s a relatively simple and obvious pattern (the first row on your keyboard). Many dictionary attacks include not only word lists, but also patterns such as this one.
A one-time password is a password that’s valid for one logon session only. After a single logon session, the password is no longer valid. Thus, if an attacker obtains a one-time password that someone has already used, that password has no value. A one-time password is a dynamic password, meaning it changes at some regular interval or event. Conversely, a static password is a password that remains the same for each logon. Similar to the concept of a one-time pad in cryptography (which we discuss in Chapter 5), a one-time password provides maximum security for access control.
Security professionals should be sure to distinguish one-time passwords from passwords that are valid for a short period of time. Often, what is considered a one-time password is actually a password that is valid for several minutes. Limited-time passwords are a big improvement in security, but they’re subject to replay attacks if the attacker acts quickly.
A PIN in itself is a relatively weak authentication mechanism because you have only 10,000 possible combinations for a four-digit numeric PIN. Therefore, organizations usually use some other safeguard in combination with a PIN. For example, a PIN used with a one-time token password and an account lockout policy is also very effective, allowing a user to attempt only one PIN/password combination per minute and then locking the account after three or five failed attempts as determined by the security policy.
Multi-factor authentication involves two or more of what you know, what you have, and what you are. Multi-factor authentication is more challenging for an adversary to attack, since a successful attack of multi-factor authentication requires the attacker possess the user’s token, or the ability to trick a biometric reader. Types of multi-factor authentication are discussed in this section and include tokens, certificates, and biometrics.
Tokens are access control devices such as key fobs, dongles, smart cards, magnetic cards, software (known as soft tokens and installed on a tablet, mobile device, smartphone, laptop, or PC), and keypad or calculator-type cards that store static passwords (or digital certificates) or that generate dynamic passwords. The three general types of tokens are
Tokens provide two-factor authentication (something you have and something you know) by either requiring the owner to authenticate to the token first or by requiring that the owner enters a secret PIN along with the generated password. Both RADIUS and Terminal Access Controller Access Control System (TACACS+; which we discuss in the section “Centralized access controls,” earlier in this chapter) support various token products.
You can use tokens to generate one-time passwords and provide two-factor authentication.
When a user attempts to log on to a system, a one-time or short-duration password can be sent to a smartphone or mobile device via a text message or other messaging mechanism. Upon receiving this password, the user would then enter it into the system’s password field and complete the logon procedure.
A digital certificate can be installed on the user’s device. When the user attempts to authenticate to a system, the system will query the user’s device for the digital certificate to confirm the user’s identity. If the digital certificate can be obtained and if it is confirmed to be genuine, the user is permitted to log on.
Digital certificate authentication also helps to enforce users logging in using only company-provisioned devices. This presupposes the fact that the user is unable to copy the digital certificate to another, perhaps personally owned, device, or that an intruder is unable to copy the certificate to his own device.
The only absolute method for positively identifying an individual is to base authentication on some unique physical or behavioral characteristic of that individual. Biometric identification uses physical characteristics, including fingerprints, hand geometry, and facial features such as retina and iris patterns. Behavioral biometrics are based on measurements and data derived from an action, and they indirectly measure characteristics of the human body. Behavioral characteristics include voice, signature, and keystroke patterns.
Biometrics are based on the third factor of authentication — something you are. Biometric access control systems apply the concept of identification and authentication (I&A) slightly differently, depending on their use:
The necessary factors for an effective biometrics access control system include
Accuracy: The most important characteristic of any biometric system. The uniqueness of the body organ or characteristic that the system measures to guarantee positive identification is an important element of accuracy. In common biometric systems today, the only organs that satisfy this requirement are the fingers/hands and the eyes.
Another important element of accuracy is the system’s ability to detect and reject forged or counterfeit input data. The accuracy of a biometric system is normally stated as a percentage, in the following terms:
False Reject Rate (FRR) or Type I error: Authorized users to whom the system incorrectly denies access, stated as a percentage. Reducing a system’s sensitivity reduces the FRR but increases the False Accept Rate (FAR).
The False Reject Rate (or Type I error) is the percentage of authorized users to whom the system incorrectly denies access.
False Accept Rate (FAR) or Type II error: Unauthorized users to whom the system incorrectly grants access, stated as a percentage. Increasing a system’s sensitivity reduces the FAR but increases the FRR.
The False Accept Rate (or Type II error) is the percentage of unauthorized users to whom the system incorrectly grants access.
Crossover Error Rate (CER): The point at which the FRR equals the FAR, stated as a percentage. (See Figure 7-8.) Because you can adjust the FAR and FRR by changing a system’s sensitivity, the CER is considered the most important measure of biometric system accuracy.
The Crossover Error Rate is the point at which the FRR equals the FAR, stated as a percentage.
Table 7-1 summarizes the generally accepted standards for the factors described in the preceding list.
TABLE 7-1 Generally Accepted Standards for Biometric Systems
Characteristic |
Standard |
Accuracy |
CER < 10% |
Speed |
5 seconds |
Throughput |
6–10 per minute |
Enrollment time |
< 2 minutes |
Common types of physical biometric access control systems include
Fingerprint recognition and finger scan systems: The most common biometric systems in use today. They analyze the ridges, whorls, and minutiae (bifurcations and ridge endings, dots, islands, ponds and lakes, spurs, bridges, and crossovers) of a fingerprint to create a digitized image that uniquely identifies the owner of the fingerprint. A fingerprint recognition system stores the entire fingerprint as a digitized image. A disadvantage of this type of system is that it can require a lot of storage space and resources. More commonly, organizations use a finger scan system, which stores only sample points or unique features of a fingerprint and therefore requires less storage and processing resources. Also, users may more readily accept the technology because no one can re-create an entire fingerprint from the data in a finger scan system. See Table 7-2 for general characteristics of finger scan systems.
Finger scan systems, unlike fingerprint recognition systems, don’t store an image of the entire fingerprint — only a digitized file describing its unique characteristics. This fact should allay the privacy concerns of most users.
TABLE 7-2 General Characteristics of Finger Scan and Hand Geometry Systems
Characteristic |
Finger Scan |
Hand Geometry |
Accuracy |
< 1%–5% (CER) |
< 1%–2% (CER) |
Speed |
1–7 seconds |
3–5 seconds |
File size |
~250–1500 bytes |
~10 bytes |
Advantages |
Nonintrusive, inexpensive |
Small file size |
Disadvantages |
Sensor wear and tear; accuracy may be affected by swelling, injury, or wearing rings |
Sensor wear and tear; accuracy may be affected by swelling, injury, or wearing rings |
TABLE 7-3 General Characteristics of Retina and Iris Pattern Systems
Characteristic |
Retina Pattern |
Iris Pattern |
Accuracy |
1.5% (CER) |
< 0.5% (CER) |
Speed |
4–7 seconds |
2.5–4 seconds |
File size |
~96 bytes |
~256–512 bytes |
Advantages |
Overall accuracy |
Best overall accuracy |
Disadvantages |
Perceived intrusiveness; sanitation and privacy concerns |
Subject must remain absolutely still; subject can’t wear colored contact lenses or glasses (clear contacts are generally okay) |
Common types of behavioral biometric systems include
TABLE 7-4 General Characteristics of Voice Recognition and Signature Dynamics Systems
Characteristic |
Voice Recognition |
Signature Dynamics |
Accuracy |
< 10% (CER) |
1% (CER) |
Speed |
10–14 seconds |
5–10 seconds |
File size |
~1,000–10,000 bytes |
~1,000–1,500 bytes |
Advantages |
Inexpensive; nonintrusive |
Nonintrusive |
Disadvantages |
Accuracy, speed, file size; affected by background noise, voice changes; can be fooled by voice imitation |
Signature tablet wear and tear; speed; can be fooled by a forged signature |
The concept of accountability refers to the capability of a system to associate users and processes with their actions (what they did). Audit trails and system logs are components of accountability.
Systems use audit logs and audit trails primarily as a means of troubleshooting problems and verifying events. Users should not view audit logs and audit trails as a threat or as “big brother” watching over them because they cannot be trusted. As a matter of fact, astute users consider these mechanisms as protective, because they not only prove what they did, but they also help to prove what they did not do. Still, it’s wise for users to be mindful of the fact that the systems they use are recording their actions.
An important security concept that’s closely related to accountability is non-repudiation. Non-repudiation means that a user (username Madame X) can’t deny an action because her identity is positively associated with her actions. Non-repudiation is an important legal concept. If a system permits users to log in using a generic user account, or a user account that has a widely known password, or no user account at all, then you can’t absolutely associate any user with a given (malicious) action or (unauthorized) access on that system, which makes it extremely difficult to prosecute or otherwise discipline that user.
A session is a formal term referring to an individual user’s dialogue, or series of interactions, with an information system. Information systems need to track individual users’ sessions in order to properly distinguish one user’s actions from another’s.
In order to protect the confidentiality and integrity of data accessible through a session, information systems generally utilize session or activity timeouts, to prevent an unauthorized user from continuing a session that has been idle or otherwise inactive for a specified period of time.
Two primary means of session timeouts are utilized:
For example, if an authorized user leaves a computer terminal unlocked or a browser window on a workstation unattended, an unauthorized user can simply sit down at the workstation and continue the session.
Formal user registration processes are important for secure account provisioning, particularly in large organizations where it is not practical or possible to know all of the workers. This is particularly critical in SSO, Federated, and PKI environments (see Chapter 5), where users will have access to multiple systems and applications.
Proof of identity often begins at the time of hire, when new workers are usually required to show government-issued identification and legal right-to-work status. These procedures should form the basis for initial user registration to information systems.
Organizations need to take several precautions when registering and provisioning users:
Additional considerations about user identity occur when a user is attempting to log on to a system. These are
Depending on the preceding conditions, the system may be configured to present additional challenges to the user. These challenges ensure that the person attempting to log in actually is the authorized user, not another person or machine. This is known as risk-based authentication.
Federated identity management (FIM) enables multiple organizations to use each other’s user identification and authentication systems to access their networks and systems. Federation of identity (FIdM) comprises the standards, technologies, and tools used to facilitate the portability of identity across separately managed organizations.
FIdM permits organizations that want to facilitate easier user access to their systems without having to create custom solutions. Instead, they need only configure existing tools and occasionally add “connectors” to facilitate inter-organization identity management.
Technologies in common use in federated environments include
Credential management systems enable an organization to centrally organize and control userids and passwords for users. This should not be confused with systems used to store and manage users’ professional credentials (such as the CISSP certification).
Credential management systems are available as commercial software products that can be implemented either on-premises or in the cloud.
Credential management systems create user accounts for subjects, and provision those credentials as required into both individual systems and centralized identity management systems (such as LDAP or Microsoft Active Directory). Credential management systems can be either separate applications (as explained previously) or an integral part of an identity and access management system.
Most organizations have a variety of business applications, some of which run on-premises while others are in the cloud. In order to avoid the issue of users having to manage multiple sets of user credentials, many organizations have implemented some form of cloud-based identity management service. The benefits to organizations are twofold:
The manner in which organizations implement a centralized identity and access management system depends on several factors, including:
Because most organizations’ newer business systems are cloud based, many are opting to implement cloud based identity management and/or single sign-on systems. While each IAM platform has its own unique capabilities and architecture, generally an IAM system will resemble the architecture depicted in Figure 7-9.
Organizations with on-premises systems often purchase and integrate identity management tools into their environments in order to reduce the burden of identity management, as well as improve end user experience. Where Microsoft servers are used, organizations can integrate their systems and applications with Active Directory, which is included with Microsoft server operating systems. In organizations without Microsoft servers, open source tools that use LDAP (lightweight directory access protocol) are a preferred choice. There are also several commercial on-premises identity service products that can be installed and integrated with systems, devices, and software applications.
On-premises identity management tools generally have the same features as their cloud-based counterparts. Some of these tools can be either implemented on-premises or cloud-based, and a few offer solutions that employ cloud-based and on-premises working together as a single identity access solution.
Authorization mechanisms are the portions of operating systems and applications that determine which data and functions a user is permitted to access, based upon the user’s identity. Authorization (also referred to as establishment) defines the rights and permissions granted to a user account or process (what the user can do and/or what data the user can access)). After a system or application authenticates a user, authorization determines what that user (subject) can do with a system or resource (object).
Data access controls protect systems and information by restricting access to system files and user data based on user identity. Data access controls also provide authorization and accountability, relying on system access controls to provide identification and authentication.
Data access control techniques are generally categorized as either discretionary or mandatory. You, as a CISSP candidate, must fully understand the concept of discretionary and mandatory access controls and be able to describe specific access control methods that fall under each category.
Role-based access control (RBAC) is a method for managing user access controls. Role-based access control assigns group membership according to organizational or functional roles. Individuals may belong to one or many groups (either acquiring cumulative permissions or limited to the most restrictive set of permissions for all assigned groups); a group may contain only a single individual (corresponding to a specific organizational role assigned to one person). Access rights and permissions for objects are assigned to groups, rather than (or in addition to) individuals. RBAC greatly simplifies the management of access rights and permissions, particularly in organizations that have large functional groups or departments, and organizations that routinely rotate personnel through various positions or otherwise experience high turnover.
The advantages of role-based access control include
Many systems that employ RBAC still permit access rights to be granted to individual end users. Still, many organizations tend to stick with the use of roles, even if there are instances where only one member is a member of a role.
The concept of role based access control is depicted in Figure 7-10.
Rule-based access control (not to be confused with role-based access control in the preceding section) is one method of applying mandatory access control. Actually, all MAC-based systems (discussed next) implement a simple form of rule-based access control by matching an object’s sensitivity label and a subject’s sensitivity label to determine whether the system should grant or deny access. You can apply additional rules by using rule-based access control to further define specific conditions for access to a requested object. Other types of rules to govern access include
A mandatory access control (MAC) is an access policy determined by the system, rather than by the owner. Organizations use MAC in multilevel systems that process highly sensitive data, such as classified government and military information. A multilevel system is a single computer system that handles multiple classification levels between subjects and objects. Two important concepts in MAC are
Lattice-based access controls are another method of implementing mandatory access controls. A lattice model is a mathematical structure that defines greatest lower-bound and least upper-bound values for a pair of elements, such as a subject and an object. Organizations can use this model for complex access control decisions involving multiple objects and/or subjects. For example, given a set of files that have multiple classification levels, the lattice model determines the minimum clearance level that a user requires to access all the files.
Major disadvantages of mandatory access control techniques include
A discretionary access control (DAC) is an access policy determined by the owner of a file (or other resource). The owner decides who’s allowed access to the file and what privileges they have.
Two important concepts in DAC are
Access control lists (ACLs) provide a flexible method for applying discretionary access controls. An ACL lists the specific rights and permissions that are assigned to a subject for a given object.
Major disadvantages of discretionary access control techniques such as ACLs or role-based access control include
Attribute-based access control (ABAC) is an access policy determined by the attributes of a subject and object, as well as environmental factors. In an ABAC-based system, the ability for a subject to access an object is based on one or more attributes about the subject (such as the subject’s position title, department, or project assignment), as well as attributes about the object itself (such as its name, project name, owner, or location). Further, environmental factors are used to determine whether access will be granted; example environmental factors include the location of the subject, the time of day, and other conditions.
In an ABAC-based system, the access decision is made by the Policy Decision Point (PDP) and enforced by the Policy Enforcement Point (PEP).
Gaining access to a system or network is often on an attacker’s list of objectives. Attackers commonly use several methods of attack against access control systems, including:
Organizations should employ various tactics and processes to counter access control attacks, including:
Organizations must adopt formal policies and procedures to address account provisioning, review, and revocation. The phases in the IAM provisioning lifecycle are
Access provisioning. When new or temporary employees, contractors, partners, auditors, and third parties require access to an organization’s systems and networks, the organization must have a formal methodology for requesting access. The steps in access provisioning are:
New accounts must be provisioned correctly and in a timely manner to ensure access is ready and available when the user needs it, but not too soon (so as to ensure that new accounts not yet in active use are not compromised by an attacker).