ITP-PCCE Checks
On the Verify Privileged Identity Platform, Checks for Identity Threat Protection (ITP) and Privilege Control for Cloud Entitlements (PCCE) provide comprehensive visibility into identity security posture across multi-cloud environments and SaaS applications.
See the complete list of available CID Checks.
When you enable ITP/PCCE functionality on the Platform, checks automatically run and evaluate entitlements. But to receive alerts and view cases for failed ITP and PCCE checks, you must enable Analytics. See Getting Started with Analytics.
General Checks (across multiple apps)
This section describes general ITP/PCCE checks.
Admins without MFA
Detects admin user accounts that do not have multi-factor authentication enabled. Accounts without multi-factor authentication are vulnerable to credential and token theft.
Verify Privileged Identity Platform searches for any user account with the MFA property set to false. To ensure that the user has a chance to set up MFA before being detected, Verify Privileged Identity Platform ignores any account that was never activated (staged) and any account that never performed an initial login (with a login date that is empty or set to 1970).
Apps with unused federated access
Detects federated applications that have not been accessed in the past 90 days. Applications created within the past 90 days are not evaluated. Unused federated access increases the blast radius of a compromised identity provider account, since the unused application is still reachable.
Remove access to the application, or remove the application entirely, to reduce the attack surface.
Supported for Okta and Microsoft Entra ID.
Avoid NHI with super admin permissions
Flag and investigate service accounts (non-human identities) with excessive or unnecessary super admin permissions. These accounts often operate without sufficient oversight, making them high-risk if compromised.
Supported for Active Directory, AWS, Azure, GCP.
Excessive number of non-human administrators
Detects non-human accounts (service accounts, workloads, and similar identities) that hold administrative privileges. The check fails when the number of non-human administrators reaches the configured threshold (default: 5); every non-human administrator is listed regardless of the threshold. Non-human admin accounts can indicate attacker persistence or lateral movement; validate the source and business justification for each one.
Review the affected non-human accounts and remove administrative access that is not justified.
Supported for Active Directory (on-premises), Microsoft Entra ID, Okta, Google Cloud Platform, and Ping Identity.
The threshold is configurable per application.
External access to app
Identifies external accounts that have access to an application. Review every external account and confirm it should retain access; remove access from any account that does not need it. External accounts are defined through the customer-editable External Accounts system collection on the Collections page.
This check does not evaluate disabled accounts, and only evaluates accounts that have access to at least one federated application.
Supported for AWS, AWS IAM Identity Center, Google Cloud Platform, Google Workspace, Okta, Ping Identity, Microsoft Entra ID, and Microsoft Azure.
Limit number of administrators [federated access]
Detects federated admin accounts, as a new administrative account might be an indication of persistence or later movement achieved by an attacker. Validate that the user should be an admin; otherwise remove admin privileges.
Supported for apps that are not IdPs.
You can set a threshold to define the expected number of admins so the check won't fail.
Limit number of external administrators
Detects external admin accounts, as a new administrative account might be an indication of persistence or later movement achieved by an attacker. Validate that the user should be an admin; otherwise remove admin privileges.
You can configure external accounts on the Collections page.
Limit number of human administrators
Detects human accounts, as new administrative account might be an indication of persistence or later movement achieved by an attacker, valid each account becoming an admin, validating the source and the reason for it being high privileged.
You can set a threshold to define the expected number of admins so the check won't fail.
Nested administrative group membership
Detects when a principal inherits membership in a high-value administrative group through a chain of nested groups. Nested group chains create hidden privilege escalation paths that are easy to miss during a manual access review.
Remove the principal (user or group) from the base group, flatten unnecessary group nesting, and review nested administrative groups on a regular schedule.
Supported for AWS, AWS IAM Identity Center, Google Cloud Platform, Google Workspace, Okta, Ping Identity, Microsoft Entra ID, Microsoft Azure, Active Directory (on-premises), and Snowflake.
Remove active users without login activity
Detect active users who haven't logged in for 180 days. To increase security posture and prevent stolen credentials from being used, enforce that users must re-log in to their accounts.
Remove disabled users with admin privileges
Detects disabled users who still have administrative rights. Such accounts are vulnerable to reactivation or abuse.
Remove empty groups with entitlements
Tracks empty groups that still have entitlements, meaning any member that joins those groups will be able to gain those privileges. Empty groups with entitlements can lead to undesired access to assets the group is entitled to.
Remove inactive human accounts
Inactive human accounts are identified after 90 days of inactivity. These accounts retain access rights despite no recent activity, creating security vulnerabilities.
Inactivity days filed is configurable under Alerts Settings.
Remove inactive human admin accounts
Inactive human admin accounts are identified after 30 days of inactivity due to their elevated privileges. These accounts retain administrative access rights despite no recent activity, making them high-value targets for attackers seeking to compromise your organization.
Inactivity days filed is configurable under Alerts Settings.
Remove partially off‑boarded accounts
Detects user identities that were terminated in Workday but are still enabled in the application.
Need to connect Workday to see results.
Remove partially suspended/disabled users
Flags user accounts that are suspended or disabled in one identity provider (e.g., Okta) but still enabled in the application.
Need to connect IdP to see results.
Remove shadow admin human accounts
Detects Human accounts with shadow admin entitlements, the policy logic tracks both local and federated accounts. The full list of shadow admin permissions that are evaluated and their combinations can be found here. A shadow admin is a user who does not have full administrative privileges but has sensitive privileges that grant them control over other users or over sensitive administrative tasks.
Supported for Active Directory, AWS, Azure, GCP.
Remove stale administrative non-human identities
Stale administrative non-human identities are identified after 30 days of inactivity due to their elevated privileges. These service accounts, API keys, or automated identities retain administrative access rights despite no recent activity, making them critical security risks if compromised.
Inactivity days filed is configurable under Alerts Settings
Remove stale non-human identities
Stale non-human identities are identified after 90 days of inactivity. These service accounts, API keys, or automated identities retain access rights despite no recent activity, creating security vulnerabilities. Attackers often target stale NHIs as they're less monitored than human accounts.
Inactivity days filed is configurable under Alerts Settings.
Remove suspended accounts with admin privileges
Detects accounts that are suspended. A suspended user is a potential risk to the organization because attackers can take advantage of unmonitored accounts, and We recommend removing these accounts.
Remove unused custom roles
Detects custom roles that have not been used in the past 90 days. Unused roles with standing privileges increase the blast radius of a compromised credential.
Review the role's last-used date and confirm with the owning team, then delete the custom role if it is no longer required. Removing the role's assignments does not clear the finding; only deleting or using the role does.
Supported for AWS, AWS IAM Identity Center, Google Cloud Platform, Google Workspace, Okta, Ping Identity, Microsoft Entra ID, and Microsoft Azure.
Shadow admin non-human identities
Detects non-human identities — service accounts, workloads, secrets, and keys — that hold sensitive administrative privileges without full administrative rights. Shadow admin non-human identities are especially risky because they often carry long-lived credentials and operate with less oversight than human accounts.
The full list of shadow admin permissions that are evaluated can be found here.
Supported for AWS, Microsoft Azure, Google Cloud Platform, and Active Directory (on-premises).
Users with weak MFA
Detects user accounts enrolled with weak MFA authentication factors, such as SMS, voice, phone, email, and security questions. Disabling these factors and replacing them with stronger alternatives helps reduce exposure to account compromise.
Users without MFA
Detects user accounts that do not have multi-factor authentication enabled. Accounts without multi-factor authentication are vulnerable to credential and token theft.
Verify Privileged Identity Platform searches for any user account with the MFA property set to false. To ensure that the user has a chance to set up MFA before being detected, Verify Privileged Identity Platform ignores any account that was never activated (staged) and any account that never performed an initial login (with a login date that is empty or set to 1970).
Weak MFA authentication factors in use
Detects MFA attempts that use a weak multi-factor authentication (MFA) factor. Weak factors are easier for attackers to intercept or bypass than an authenticator app or a hardware key, so continued use of them increases the risk of account takeover even when MFA is technically enabled.
Review the affected accounts and require a stronger MFA factor going forward.
Supported for Okta and Microsoft Entra ID.
Active Directory-Specific
This section describes ITP/PCCE checks unique to Active Directory.
Account privileged in both on-premises AD and Entra ID
Detects identities that hold administrative rights in both on-premises Active Directory and Microsoft Entra ID. On the cloud side, administrative access to Azure subscriptions also counts. An account with administrative access on both sides of a hybrid environment gives an attacker a path to escalate from one environment to the other.
Review the affected accounts and confirm that administrative access on both sides is necessary.
Supported for Active Directory (on-premises) and Microsoft Entra ID. The check is evaluated only when both applications are connected.
Accounts missing AES Kerberos encryption
Detects Active Directory accounts, including user, computer, and group managed service accounts, that do not support AES Kerberos encryption. Disabled accounts are not evaluated. Accounts without AES support are more vulnerable to credential theft and Kerberos downgrade attacks.
Accounts using DES encryption
Detects user accounts configured to allow DES encryption for Kerberos authentication. DES is a deprecated, insecure encryption type.
Clear the “Use DES encryption types” option on the affected accounts.
AD service account with weak password encryption
Detects Active Directory accounts with weak Kerberos password encryption. An account fails this check if it has a Service Principal Name (SPN) and its encryption type is explicitly unset (defaulting to RC4), or if it was created on or before 31 December 2012 and its password was last changed on or before 31 December 2012. Disabled accounts are excluded.
Rotate the password on affected accounts and configure a modern encryption type.
Admin account does not follow naming convention
Detects administrative accounts that do not follow your organization's naming convention. Consistent naming makes it easier to audit privileged accounts and spot ones created by an attacker or through shadow IT.
Configure the naming convention using the compliant admin accounts collection on the Collections page.
Built‑in Administrator account usage
Detects any recent usage of the default built-in Administrator account, which bypasses typical auditing mechanisms.
Built‑in Administrator account with password older than 90 days
The password for the built-in administrator account must be changed at least every 90 days.
Built‑in Guest account is enabled
Detects whether the guest account is enabled in Active Directory. This account is commonly targeted by attackers.
Computer password stale 90 days
Detects computer accounts whose password has not changed in more than 90 days. Disabled computer accounts are included. Stale computer passwords can indicate an offline, decommissioned, or compromised machine with disabled password rotation.
Computers can retrieve gMSA password
Detects group Managed Service Accounts (gMSAs) where a non-privileged principal — a user, group, or computer — is permitted to retrieve the gMSA's password. These principals can authenticate as the service account, enabling lateral movement and privilege escalation.
Remove non-privileged principals from the gMSA's list of accounts permitted to retrieve its managed password.
Constrained delegation to krbtgt
Detects computer objects configured with constrained delegation to the krbtgt account. This configuration can enable Golden Ticket–equivalent attacks and should not exist in a healthy environment. User and service accounts are covered by the Unsecure Kerberos delegation check.
Remove the delegation configuration from the affected computer.
Constrained delegation to SSO account
Detects delegation rights configured to the AZUREADSSOACC account used by Microsoft Entra Connect Seamless Single Sign-On. No account should have delegation rights to this service account, since it enables generation of Entra ID service tickets.
Remove the delegation configuration from the affected account.
This check produces results only in hybrid environments where Entra Connect Seamless SSO is enabled.
Critical obsolete OS detected
Detects domain-joined computers running an operating system with no vendor security support. The current list covers 28 operating system versions from Windows NT 4.0 through Windows Server 2012/R2, including Windows Server 2003, Windows Vista, Windows 7 and 8, and Windows Server 2008.
Upgrade or decommission the affected computers.
DC machine account password stale
Detects domain controller machine accounts that have not rotated their password within 30 days. This shorter window matches the Windows default rotation interval for domain controller machine accounts and helps catch domain replication issues, stale systems, or misconfigurations that weaken the secure channel between domain controllers.
This check does not overlap with Computer password stale 90 days, which excludes domain controllers.
Supported for Active Directory (on-premises).
DC RBCD enabled
Detects domain controllers configured with Resource-Based Constrained Delegation (RBCD), which allows specified accounts to impersonate any user to domain controller services. This configuration is rarely legitimate and should be treated as a critical finding.
Remove the RBCD configuration from the affected domain controller.
Delegation to ghost SPN
Detects constrained delegation configured to a Service Principal Name (SPN) that no longer exists anywhere in the environment. An attacker who registers that SPN could hijack the delegated credentials.
Remove the stale delegation configuration.
Disable non‑expiring password for AD accounts
Detects AD user accounts with passwords that never expire, which could lead to credential compromise.
Disable users' right to add computers to the domain
Finds where the default permission “Add workstations to domain” is enabled for Authenticated Users. This permission can be exploited by attackers.
Do not require Kerberos pre‑authentication
Detects accounts that do not require Kerberos pre-authentication, exposing them to AS-REP roasting attacks.
Excessive local administrators on computer
Detects Windows computers with more than 5 human local administrator accounts. Disabled accounts are counted. Excessive local administrator accounts increase the risk of lateral movement if any one of them is compromised.
Review the local administrators on the affected computer and remove accounts that do not need administrative access.
The per-computer limit of 5 human local administrator accounts is not configurable. The Affected Entities Threshold (default: 5) is configurable; it sets how many flagged local administrator assignments cause the check to fail.
Insufficient Domain Admin redundancy
Ensure that at least one additional trusted domain administrator exists. Lack of redundancy may prevent necessary administrative operations during emergencies. Domain admin is the most privileged role in Active Directory.
The check fails when there is only one administrator, or none.
Limit number of Domain Admins
The Domain Admins group should contain only the minimum number of necessary users. Domain admin is the most privileged role in Active Directory. Excessive membership increases risk and management complexity.
You can set a threshold to define the expected number of admins so the check won't fail.
Microsoft Entra Seamless SSO account stale password
Detects when the Kerberos password for the Microsoft Entra Seamless SSO account (AZUREADSSOACC) has not been changed in more than 30 days, or when no password-set date is recorded, matching Microsoft's guidance to rotate this key regularly. Only enabled accounts are evaluated.
Rotate the Kerberos key for the Seamless SSO account using Microsoft's documented procedure.
Applies in hybrid environments with Entra Connect Seamless SSO enabled.
Non-standard primary group ID
Detects Active Directory user accounts with a non-standard primary group ID. The default primary group for a user account is Domain Users; Domain Admins and Enterprise Admins are also treated as expected primary groups. Any other value may indicate an attempt to bypass access control checks or hide privilege.
Review the affected accounts and correct the primary group assignment.
Print Spooler service enabled on DC host
Detects domain controllers where the Print Spooler service is present. The Print Spooler service is a known vector for privilege escalation and lateral movement (for example, PrintNightmare-style attacks) and should be disabled on domain controllers unless explicitly required.
Disable the Print Spooler service on the affected domain controller.
Requires the Active Directory connector to inventory Windows services on the domain controller.
Privileged account with unprivileged owner
Flags privileged Active Directory accounts whose owner does not have equivalent or appropriate permissions.
Privileged accounts with RODC credential caching
Detects privileged accounts that are permitted to have their credentials cached on a Read-Only Domain Controller (RODC). Credential caching for privileged accounts increases exposure to credential theft if the RODC is compromised.
Remove the affected accounts from the RODC's allowed-caching list.
Privileged computer with delegation rights
Detects computers with Tier-0 or infrastructure roles (identified by service principal names associated with domain controller, certificate services, SQL Server, and similar high-value roles) that are configured to allow delegation. Delegated privileged computer accounts pose a critical risk for lateral movement and privilege escalation.
Remove the delegation configuration from the affected computer.
Supported for Active Directory (on-premises).
Privileged SIDs in sIDHistory
Detects enabled accounts with a Domain Admins, Enterprise Admins, or BUILTIN Administrators SID in their sIDHistory attribute. Groups and disabled accounts are not evaluated. This can indicate a hidden grant of administrative privilege, often used to preserve access across a migration or as a persistence mechanism.
Remove the unexpected SID from the account's sIDHistory attribute.
Supported for Active Directory (on-premises).
Protocol transition to DC
Detects constrained delegation with protocol transition configured to domain controller services (identified by LDAP or CIFS service principal names). This configuration allows impersonating any user to domain controller services without that user's interaction and should not exist in a healthy environment.
Remove the delegation configuration from the affected account.
RBCD enabled on krbtgt account
Detects when the krbtgt account is configured to allow Resource-Based Constrained Delegation. Any finding here is a critical security issue with no legitimate justification.
Remove the delegation configuration from the krbtgt account immediately.
Remove adminCount flag from non‑privileged accounts
Detects accounts with an unnecessary adminCount=1 value that could inherit elevated permissions unintentially.
Remove delegation trust from privileged accounts
Detects accounts configured for delegation (especially unconstrained) that also have privileged roles. These accounts pose high impersonation risks.
Rotate Entra Connect password
Detects whether the password used for Entra Connect sync has not been rotated in 180 days.
Same domain SID history injection
Detects sIDHistory entries that reference a SID from the same domain as the account. Only enabled accounts are evaluated. This pattern has no legitimate migration use case within a single domain and indicates a confirmed SID History injection attack.
Remove the sIDHistory entry from the affected account.
Supported for Active Directory (on-premises).
Service accounts with stale password
Detects AD service accounts that haven't rotated their password in 90 days.
Shadow admin — DACL-based privilege escalation paths
Detects non-administrative accounts that hold DACL permissions on high-value Active Directory objects, enabling privilege escalation to Domain Admin through Kerberoasting, Shadow Credentials, group membership manipulation, Resource-Based Constrained Delegation, or LAPS password theft. A finding indicates a shadow administrator — an account with no explicit administrative group membership but with effective administrative control over the domain.
Review the affected account's permissions and remove the unnecessary DACL grant.
Unsecure Kerberos delegation
Detects Kerberos delegation misconfigurations, including unconstrained delegation, constrained delegation, and Resource-Based Constrained Delegation, that allow an attacker to impersonate users to services.
Review and remove unnecessary delegation configurations on the affected accounts.
Supported for Active Directory (on-premises).
Users with password not required
Detects user accounts that have the “Password Not Required” flag set.
Users with stale password
Detects Active Directory accounts whose password has not been changed within the required rotation period (90 days by default). Stale passwords increase the risk of unauthorized access from credential reuse or password spraying.
Accounts with the password-never-expires option enabled are excluded from this check; they are covered separately by the Disable non‑expiring password for AD accounts check.
Supported for Active Directory (on-premises) only.
Users with unconstrained delegation
Flags users with unconstrained delegation rights in Active Directory. These accounts can impersonate others and should be carefully reviewed.
AWS-Specific
This section describes ITP/PCCE checks unique to Amazon Web Services (AWS).
Avoid AWS privileged/shadow/admin role chaining
Helps to detect chaining of AWS roles, which can facilitate lateral movement and privilege escalation. You can configure which destination roles should be included. For example, you can configure it to track any role that can assume an administrative role.
To calculate this check, Verify Privileged Identity Platform analyzes the trust policies and checks whether one role can assume another.
Avoid AWS role chaining
Helps to detect chaining of AWS roles, which can facilitate lateral movement and privilege escalation. You can configure which destination roles should be included. For example, you can configure it to track any role that can assume an administrative role.
To calculate this check, Verify Privileged Identity Platform analyzes the trust policies and checks whether one role can assume another.
Non-rotated AWS access keys
Detects AWS IAM user access keys that have not been rotated and have not been used within the past 60 days. Static, non-rotated keys pose a compliance and security risk.
Rotate the affected access keys according to your organization's key rotation policy.
Refactor excessive privileges for AWS policy
Detects IAM policies that can be refactored with a narrower scope based on activity during the last X days. Use the policy definition to define the number of days this detection should look back in order to identify unused permissions.
Reducing excessive privileges on a policy helps mitigate the blast radius of a breach, and keeps the organization secure by ensuring least privilege.
Inactivity days field is configurable under Alerts Settings.
For this check, we look at the associated role/group/user assignments and their activities.
Refactor excessive privileges for group (AWS local account)
Detects group entitlements that can be refactored with a narrower scope based on users activity during the last 90 days. Reducing group excessive privileges helps mitigate the blast radius of a breach, and keeps the organization secure by ensuring least privilege.
Inactivity days field is configurable under Alerts Settings.
This check runs only when S3 log fetching is configured for the AWS account (under Discovery > Sources > AWS Threat Protection integration).
Refactor excessive privileges for group (IAM Identity Center)
Detects group entitlements with access to AWS account through AWS Identity Center that can be refactored with a narrower scope based on users activity during the last 90 days. Reducing group excessive privileges helps mitigate the blast radius of a breach, and keeps the organization secure by ensuring least privilege.
Inactivity days field is configurable under Alerts Settings.
This check runs only when S3 log fetching is configured for the AWS account (under Discovery > Sources > AWS Threat Protection integration).
Refactor excessive privileges for permission set (IAM Identity Center)
Detects IAM Identity Center permission set entitlements that can be refactored with a narrower scope based on activity in all AWS accounts during the last 90 days. Reducing permission set excessive privileges helps mitigate the blast radius of a breach, and keeps the organization secure by ensuring least privilege.
Inactivity days field is configurable under Alerts Settings.
This check runs only when S3 log fetching is configured for the AWS account (under Discovery > Sources > AWS Threat Protection integration).
This check will appear for AWS IAM Identity Center App.
Refactor excessive privileges for role (AWS local account)
Detects AWS local IAM role entitlements that can be refactored with a narrower scope based on activity during the last 90 days. Reducing excessive privileges helps mitigate the blast radius of a breach, and keeps the organization secure by ensuring least privilege.
Inactivity days field is configurable under Alerts Settings.
This check runs only when S3 log fetching is configured for the AWS account (under Discovery > Sources > AWS Threat Protection integration).
Refactor excessive privileges for user (AWS local account)
Detects AWS local account entitlements that can be refactored with a narrower scope based on activity during the last 90 days. Reducing excessive privileges helps mitigate the blast radius of a breach, and keeps the organization secure by ensuring least privilege.
Inactivity days field is configurable under Alerts Settings.
This check runs only when S3 log fetching is configured for the AWS account (under Discovery > Sources > AWS Threat Protection integration).
Refactor excessive privileges for user (IAM Identity Center)
Detects IAM accounts entitlements with access to AWS account through AWS Identity Center that can be refactored with a narrower scope based on activity during the last 90 days. Reducing account excessive privileges helps mitigate the blast radius of a breach, and keeps the organization secure by ensuring least privilege.
Inactivity days field is configurable under Alerts Settings.
This check runs only when S3 log fetching is configured for the AWS account (under Discovery > Sources > AWS Threat Protection integration).
Remove AWS roles with cross-account access
Detects IAM roles that can be assumed from another account, either inside your organization or by external identities, based on the trust policy of each role. Monitoring AWS roles with cross-account access is crucial to detect potential misuse or unauthorized actions, ensure security and compliance, prevent data breaches, and promptly mitigate risks.
Remove policies not attached to any identity
Detects AWS policies that are not attached to any identities, meaning they can be deleted. Policies define the permissions for IaaS identities or resources, and removing unused policies can reduce the scope of available permissions and help reduce risk.
Remove stale IaaS policy attachments to role
Detects 'AWS policies' attached to IAM users or roles that have not used it during the last specified number of days. We recommend removing unused policies from identities to reduce insider and attack risk.
Remove unmanaged AWS IAM users
Detects native users in IaaS environments (IAM) in line with IaaS best practices to avoid using IAM accounts. IAM users should be used only for cases where federated access is not available and there is no option to grant access by utilizing the assume role method.
Remove unused AWS policy attachments
Detects 'AWS policies' attached to IAM users or roles that have not used them during the last specified number of days. We recommend removing unused policies from identities to reduce insider and attack risk.
Remove unused AWS roles
Detects IaaS roles that have not been used in the last specified number of days, which can be deleted due to inactivity. Best practice calls for IaaS environments to adhere to Least Privilege. Removing unused roles can mitigate an attacker's impact on your production environments.
Custom roles only.
Remove unused policies
Detects 'IaaS policies' that no one in the account has been using during the last specified number of days. These policies define permissions for IaaS identities or resources, and removing unused policies can reduce the scope of available permissions and help to reduce risk.
Azure-Specific
This section describes ITP/PCCE checks unique to Azure.
AI agents running models with high temperature
Detects AI agent assets configured with a model temperature of 0.9 or higher. Higher temperature settings increase output randomness, which can lead to unpredictable behavior or responses that expose sensitive data or misuse permissions.
Configure the agent's temperature to below 0.9.
AI agents with potential access to sensitive assets
Limiting AI agent access to sensitive or production assets reduces the risk of data leakage, abuse, or unintended actions. Granting only necessary access ensures better control, auditability, and compliance with security best practices.
Verify Privileged Identity Platform performs this calculation by leveraging our own LLM to read and analyze AI agent metadata, to understand what it can potentially access.
Avoid using AI models with high liability risks
Based on publicly available information (e.g., system cards or model cards), Verify Privileged Identity Platform identifies AI models with high liability risks. Liability risk refers to the potential for a large language model (LLM) to produce inaccurate, harmful, or misleading outputs that could result in legal or regulatory consequences. LLMs with high liability risk can expose organizations to claims of negligence, failure to comply with data protection laws, or violation of industry standards. These risks include Hallucinations (factually incorrect responses), Bias or unfair treatment in outputs, Unsafe or non-compliant behavior (e.g., generating toxic, discriminatory, or confidential content) Unauthorized actions or recommendations, Model bad reputation, and Lack of transparency or traceability in decision-making.
Avoid using AI models with high security risks
Based on publicly available information (e.g., system cards or model cards), Verify Privileged Identity Platform identifies AI models with high security risks such as prompt injection, jailbreaks, data leakage, and adversarial manipulation. Using these models can lead to unauthorized access, harmful outputs, or exposure of sensitive data.
Avoid using AI models with privacy risks
Based on publicly available information (e.g., system cards or model cards), Verify Privileged Identity Platform identifies AI models with privacy risks, including unintended data memorization, leakage of sensitive information, and lack of control over how user data is stored or processed. Using such models can expose confidential assets, violate data protection regulations, and lead to compliance breaches.
Enable audit for all AI services and agents
Without audit logs, you lose visibility into who accessed, modified, or invoked the AI agent or service, which creates blind spots in incident response, accountability, and in detecting misuse or data ex filtration.
Refactor excessive privileges for group
Detects group entitlements that can be refactored with a narrower scope based on users activity during the last 90 days. Reducing group excessive privileges helps mitigate the blast radius of a breach, and keeps the organization secure by ensuring least privilege.
Inactivity days field is configurable under Alerts Settings
Refactor excessive privileges for group on management group level
Detects group entitlements at the Azure management group level that can be refactored to a narrower scope, based on activity across all subscriptions in the management group hierarchy during the last 90 days. This check evaluates all management groups in the hierarchy, including nested management groups. Reducing excessive privileges helps limit the blast radius of a breach.
Refactor the affected entitlement to the Delinea-recommended, narrower scope.
Refactor excessive privileges for human accounts
Detects human account entitlements that can be refactored with a narrower scope based on activity during the last 90 days. Reducing excessive privileges helps mitigate the blast radius of a breach, and keeps the organization secure by ensuring least privilege.
Inactivity days field is configurable under Alerts Settings
Refactor excessive privileges for IAM role
Detects IAM roles that can be refactored with a narrower scope, based on activity during the last 90 days. Reducing excessive privileges on a role helps mitigate the blast radius of a breach, and keeps the organization secure by ensuring the least privilege.
Inactivity days field is configurable under Alerts Settings
Refactor excessive privileges for non-human accounts
Detects non-human identity entitlements that can be refactored with a narrower scope based on activity during the last 90 days. Reducing excessive privileges helps mitigate the blast radius of a breach, and keeps the organization secure by ensuring least privilege.
Inactivity days field is configurable under Alerts Settings
Refactor excessive privileges for role on management group level
Detects role entitlements at the Azure management group level that can be refactored to a narrower scope, based on activity across all subscriptions in the management group hierarchy during the last 90 days. This check evaluates all management groups in the hierarchy, including nested management groups. Reducing excessive privileges helps limit the blast radius of a breach.
Refactor the affected entitlement to the Delinea-recommended, narrower scope.
Refactor excessive privileges for user on management group level
Detects user account entitlements at the Azure management group level that can be refactored to a narrower scope, based on activity across all subscriptions in the management group hierarchy during the last 90 days. This check evaluates all management groups in the hierarchy, including nested management groups. Reducing excessive privileges helps limit the blast radius of a breach.
Refactor the affected entitlement to the Delinea-recommended, narrower scope.
Remove AI agents/services exposed to the public internet
Public network access allows access to a resource through the internet using a public IP address. Enabling public network access exposes the resource to the internet, increasing the attack surface and raising the risk of unauthorized access, data ex filtration, and abuse by compromised identities.
Remove AI agents/services owned/created by external accounts
Allowing external users to create or control AI services/agents can introduce data leakage, shadow AI usage, and model abuse risks, which undermines governance, exposes sensitive data, and increases the likelihood of unmonitored or malicious model behavior.
Remove Azure privileged roles
Tracks the creation of new sensitive Azure roles granting privileged or administrative permissions.
Privileged roles grant your identities (either users or service accounts) sensitive access to your IaaS environment. We recommend managing privileges based on the default roles in Azure.
For custom roles only.
Entra-Specific
This section describes ITP/PCCE checks unique to Entra.
Inactive service principals
Inactive service principals are detected based on 90 days of inactivity. An inactive service principal is one that has not performed any activity for a predefined period but still retains access rights. This NHI can be exploited by malicious actors and used to gain access to the organization.
Insufficient global admin redundancy
Detects when the application has too few administrators. Redundant admins ensure continuous access and management capability if one admin account becomes unavailable. In Entra, Global admin is the most privileged role.
The check fails when there is only one administrator, or none.
Limit number of global admins
Application-level admin roles grant users the highest scope of permission in the application, and increase the blast radius in the organization. We recommend keeping their number as low as possible. In Entra, Global admin is the most privileged role.
You can set a threshold to define the expected number of admins so the check won't fail.
Remove public groups that allow privilege escalation
Detects public groups. Anyone in the organization can join any public group, which grants them access to all of the assets in the group.
GCP-Specific
This section describes ITP/PCCE checks unique to GCP.
Non-rotated GCP service account keys
Detects Google Cloud service account keys that have not been rotated within the past 60 days, and also flags any service account key that has login history. Static, non-rotated keys pose a compliance and security risk.
Rotate the affected keys according to your organization's key rotation policy.
Refactor GCP role
Detects roles that can be refactored with a narrower scope, based on activity during the last 90 days. Reducing excessive privileges on a role helps mitigate the blast radius of a breach, and keeps the organization secure by ensuring least privileges.
You can configure the number of allowable inactivity days under Alerts Settings.
To calculate this check, Verify Privileged Identity Platform looks at role permissions, analyzes the associated account and group permissions, and recommends keeping only those that are in use.
Okta-Specific
This section describes ITP/PCCE checks unique to Okta.
Deactivate SCIM applications
Tracks SCIM applications with enabled provisioning settings, meaning apps that sync users and groups to another system.
Enforce password policy
Establish strong defense against unauthorized access by reducing the risk of brute force attacks, credential-based exploits, and unauthorized entry. This significantly enhances the overall security posture of the identity and access management system.
Insufficient super admin redundancy
In the event of a system failure, personnel unavailability, or unexpected circumstances, having redundant super admins ensures continuous access and management capabilities.
The check fails when there is only one administrator, or none.
Limit number of super admins
Application-level admin roles grant users the highest scope of permissions in the application, and increase the blast radius in the organization. We recommend keeping their number as low as possible. In Okta, Super admin is the most privileged type of role.
You can set a threshold to define the expected number of admins so the check won't fail.
MFA not enforced for all users
Detects Okta Global Session Policies that do not require multi-factor authentication on an active sign-on rule. This check evaluates policy configuration, not individual user enrollment — per-user MFA enrollment is covered separately by Users without MFA and Admins without MFA.
Update the affected Global Session Policy to require MFA on all active rules.
MFA not required on every sign-in
Requiring MFA for every sign in makes it significantly more challenging for attackers to compromise user accounts.
Set idle time for all users
Automatically log out users who have been inactive for an extended period. This reduces the risk of unauthorized access when a user forgets to log out or leaves their session unattended.
Set session lifetime for all users
Shorter session durations mitigate the impact of potential security threats such as session hijacking or unauthorized use of active sessions. Minimizing the risk of prolonged access to sensitive information enhances security.
SWA application with external password sync
Detects Okta SWA (Secure Web Authentication) applications configured to sync the user's actual password to a third-party application. This exposes the user's real password to systems outside your identity provider.
Disable master password sync on the affected application immediately.
User passwords exposed in Okta logs
Detects when a user's actual password appears to have been typed into a username field and logged by Okta, based on correlating a failed sign-in attempt with a successful sign-in from the same IP address and user agent within 30 minutes before or after it.
Require the affected user to reset their password.
Weak authentication enabled
Detects Okta authenticator enrollment policies where a weak MFA factor (phone, email, or security question) is enabled or simply not explicitly disabled. Weak authentication factors significantly increase the risk of unauthorized access.
Review your Okta authenticator enrollment policy and explicitly disable weak factors for all applicable policies and rules.
Ping-Specific
This section describes ITP/PCCE checks unique to Ping.
Insufficient organization admin redundancy
In the event of a system failure, personnel unavailability, or unexpected circumstances, having redundant super admins ensures continuous access and management capabilities. In Ping, Organization Admin is the most privileged type of role.
The check fails when there is only one administrator, or none.
Limit number of organization admins
Application-level admin roles grant users the highest scope of permission in the application, and increase the blast radius in the organization. We recommend keeping their number as low as possible. In Ping, Organization Admin is the most privileged type of role.
You can set a threshold to define the expected number of admins so the check won't fail.
See also: