> ## Documentation Index
> Fetch the complete documentation index at: https://support.entegrata.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Testing Permissions

> Test, explore, and validate access control configurations to ensure proper permissions

## Overview

The permission testing and exploration tools allow you to validate your access control configuration, understand permission flows, and troubleshoot access issues. These tools provide visibility into how permissions are evaluated and help ensure users have appropriate access to resources.

## Testing Tools Available

Entegrata provides three main testing interfaces:

<CardGroup cols={3}>
  <Card title="Test Permissions" icon="vial">
    Test specific subject-object permission combinations at the entity level
  </Card>

  <Card title="Explore Actor" icon="user-magnifying-glass">
    View all permissions for a specific user across all resources
  </Card>

  <Card title="Explore Groups" icon="users-viewfinder">
    Test permissions for group members and understand group access patterns
  </Card>
</CardGroup>

## Test Permissions

### When to Use Test Permissions

Use this tool to:

* Verify if a specific user can access a specific resource
* Understand which rules determine access decisions
* Troubleshoot unexpected access grants or denials

### Accessing Test Permissions

Test Permissions can be accessed from the entity level page:

**From Entity Access Control:**

1. Navigate to **Data** → **Mapping**
2. Select your mapping and entity
3. Go to the **Access Control** tab
4. Click **Test Permissions** in the toolbar

<Frame>
  <img src="https://mintcdn.com/entegrata/d4pzv5m2aXdjP4mx/data/access_control/images/testing-permissions-button.png?fit=max&auto=format&n=d4pzv5m2aXdjP4mx&q=85&s=b343db7ebff0565fd789794fb9137267" alt="Test permissions button" width="2334" height="362" data-path="data/access_control/images/testing-permissions-button.png" />
</Frame>

### Using Test Permissions

The Test Permissions modal provides a visual interface for permission testing:

<Frame>
  <img src="https://mintcdn.com/entegrata/d4pzv5m2aXdjP4mx/data/access_control/images/testing-permissions-01-modal.png?fit=max&auto=format&n=d4pzv5m2aXdjP4mx&q=85&s=1c680882a0c83d5b430a5643e3174a6f" alt="Test Permissions modal interface" width="2560" height="308" data-path="data/access_control/images/testing-permissions-01-modal.png" />
</Frame>

<Steps>
  <Step title="Select Subject">
    Choose who you're testing access for:

    * Start typing to search users or groups
    * Select from the dropdown list
    * Both actors and groups appear in the combined list
    * Selected subject appears on the left side
  </Step>

  <Step title="Select Resource (Optional)">
    Choose what resource to test:

    * Leave empty to test entity-level permissions
    * Select specific resource from dropdown
    * Search by resource name or ID
    * Selected resource appears on the right side
  </Step>

  <Step title="Run Test">
    Click the **Play** button between subject and resource:

    * The test executes real time evaluation of permissions
    * Connection lines visualize the relationship
    * Permission result displays in the center
  </Step>

  <Step title="Review Results">
    The result shows:

    * Permission badge (green Allow / red Deny)
    * Which rules contributed to the decision
    * Rule precedence and evaluation order
    * Final permission determination
  </Step>
</Steps>

<Frame>
  <img src="https://mintcdn.com/entegrata/d4pzv5m2aXdjP4mx/data/access_control/images/testing-results-ac-explore-result.png?fit=max&auto=format&n=d4pzv5m2aXdjP4mx&q=85&s=971d4de49b6011bd8908f2c5ae615fdb" alt="Test permissions results" width="2606" height="1056" data-path="data/access_control/images/testing-results-ac-explore-result.png" />
</Frame>

### Understanding Test Results

The results panel displays:

<ResponseField name="Permission Result" type="display">
  * **Allow** (green badge): Subject has view access
  * **Deny** (red badge): Subject is blocked from access
</ResponseField>

<ResponseField name="Applied Rules" type="list">
  Shows all rules that affected the decision:

  * Rule name and description
  * Permission type (Allow/Deny)
  * Precedence level
  * Why the rule applies
</ResponseField>

<ResponseField name="Decision Path" type="explanation">
  Explains how the final permission was determined:

  * Default permission consideration
  * Rule evaluation order
  * Precedence conflicts resolution
  * Final decision reasoning
</ResponseField>

## Explore Actor Access

### Purpose

Actor exploration provides a comprehensive view of an individual's access to all resources across your entire system.

### Starting Actor Exploration

1. Go to **Access Control** → **Actors**
2. Click **Explore Actor** in the toolbar
3. The Actor Explorer modal opens

<Frame>
  <img src="https://mintcdn.com/entegrata/d4pzv5m2aXdjP4mx/data/access_control/images/testing-permissions-explore-actor.png?fit=max&auto=format&n=d4pzv5m2aXdjP4mx&q=85&s=a601bc6a7b2e6b5c58f07fc9c9266ed8" alt="Explore actor modal" width="1414" height="676" data-path="data/access_control/images/testing-permissions-explore-actor.png" />
</Frame>

<Steps>
  <Step title="Select Actor">
    Search and select the user to explore:

    * Type to search by name
    * Select from the dropdown
    * Click **Explore** to proceed
  </Step>

  <Step title="View Entity Access">
    The exploration shows all entity types:

    * Entity type and name
    * Aggregated permission level
    * Click an entity that shows an exception count
  </Step>

  <Step title="Drill into Resources">
    Click an entity to see resource details:

    * List of resource exceptions
    * Individual resource permissions
    * Navigation breadcrumb to return
  </Step>
</Steps>

### Actor Access Views

#### Entity Level View

<Frame>
  <img src="https://mintcdn.com/entegrata/d4pzv5m2aXdjP4mx/data/access_control/images/testing-permissions-explore-actor-results.png?fit=max&auto=format&n=d4pzv5m2aXdjP4mx&q=85&s=07ab6a32e1ed9904f48da609f6910c08" alt="Explore actor results" width="2342" height="1174" data-path="data/access_control/images/testing-permissions-explore-actor-results.png" />
</Frame>

The entity view displays:

* **Entity Type**: Canonical object type
* **Resource Name**: Number of accessible resources
* **Exception Count**: Resources with access opposite of entity level
* **Permission Badge**: Aggregated access level

Navigation:

* Click any entity row to see resources
* Use pagination for large entity lists
* Sort by name or resource count

#### Resource Level View

<Frame>
  <img src="https://mintcdn.com/entegrata/d4pzv5m2aXdjP4mx/data/access_control/images/testing-permissions-explore-actor-resource-results.png?fit=max&auto=format&n=d4pzv5m2aXdjP4mx&q=85&s=7278be649f1dc6f218ce41a78655c944" alt="Explore actor resource results" width="2338" height="1198" data-path="data/access_control/images/testing-permissions-explore-actor-resource-results.png" />
</Frame>

The resource view shows:

* **Breadcrumb**: Path back to entity list
* **Entity Summary**: Overall entity permissions
* **Resource List**: Individual resources
* **Resource Details**: Name and permissions

Features:

* Paginated resource list
* Individual permission badges
* Back navigation to entity view

### Interpreting Actor Exploration

Common patterns to look for:

* **Full Access**: Allow badge on all entities
* **Limited Access**: Mix of Allow and Deny badges
* **No Access**: All Deny or no entities shown
* **Exceptions**: High exception counts indicate complex rules

## Group Permission Testing

### Accessing Group Tests

To test group-level permissions:

1. Navigate to **Access Control** → **Groups**
2. Click on a group to view details
3. Click **Test Permissions** button

<Frame>
  <img src="https://mintcdn.com/entegrata/d4pzv5m2aXdjP4mx/data/access_control/images/testing-permissions-group-button.png?fit=max&auto=format&n=d4pzv5m2aXdjP4mx&q=85&s=253b77ba7348bc2cfcb417bcb845717c" alt="Test group permissions button" width="2374" height="390" data-path="data/access_control/images/testing-permissions-group-button.png" />
</Frame>

### Testing Options

The Group Permissions Test modal offers two modes:

<Frame>
  <img src="https://mintcdn.com/entegrata/d4pzv5m2aXdjP4mx/data/access_control/images/testing-permissions-results.png?fit=max&auto=format&n=d4pzv5m2aXdjP4mx&q=85&s=91bc49d791037da8a9b86e13b2f30b7c" alt="Group test permissions results" width="1862" height="1230" data-path="data/access_control/images/testing-permissions-results.png" />
</Frame>

<Tabs>
  <Tab title="Group Permissions">
    Tests permissions that apply to the group as a whole:

    * Select "Group Permissions" as the subject
    * Choose entity and optionally resource
    * Run test to see group-level access
    * Results show rules targeting the group
  </Tab>

  <Tab title="Member Permissions">
    Tests permissions for individual group members:

    * Select specific member from dropdown
    * Shows member name
    * Choose entity and resource to test
    * Results include both individual and group rules
  </Tab>
</Tabs>

### Group Test Workflow

<Steps>
  <Step title="Select Test Subject">
    Choose between:

    * Group Permissions (group as a whole)
    * Specific member (individual in context of group)
  </Step>

  <Step title="Select Entity">
    Pick the entity type to test:

    * Loads all available entities
    * Shows entity names and types
  </Step>

  <Step title="Select Resource (Optional)">
    For specific resource testing:

    * Available resources load based on entity
    * Leave empty for entity-level test
    * Search to find specific resources
  </Step>

  <Step title="Execute Test">
    Click play button to run test:

    * Visual flow shows test configuration
    * Results appear immediately
    * Detailed rule explanation provided
  </Step>
</Steps>

## Exploring Rules

### Rule Impact Preview

When creating or editing a rule, use the Explore tab to preview impact:

<Frame>
  <img src="https://mintcdn.com/entegrata/d4pzv5m2aXdjP4mx/data/access_control/images/testing-results-rule-explore.png?fit=max&auto=format&n=d4pzv5m2aXdjP4mx&q=85&s=dbaef4272b8341c91ea610fe02bf9e8d" alt="Rule explore view" width="2606" height="1362" data-path="data/access_control/images/testing-results-rule-explore.png" />
</Frame>

The exploration shows:

* **Affected Subjects**: Users and groups covered by the rule
* **Affected Objects**: Resources the rule applies to
* **Permission Impact**: How the rule changes access

<Warning>
  Always review the Explore tab before saving rules to ensure they affect only intended subjects and objects.
</Warning>

### Understanding Rule Exploration

The Explore tab provides counts and samples:

<ResponseField name="Subjects Section" type="preview">
  * Total count of affected subjects
  * List of affected subjects
  * Groups included
</ResponseField>

<ResponseField name="Objects Section" type="preview">
  * Total count of affected resources
  * List of affected resources
  * Resource type breakdown
</ResponseField>

## Best Practices for Testing

### Testing Strategy

<Tip>
  **Test Early and Often**: Test permissions during configuration, not after deployment.
</Tip>

<Tip>
  **Use Representative Examples**: Test with actual users and resources that represent common use cases.
</Tip>

<Tip>
  **Document Test Cases**: Keep a record of test scenarios for regression testing after changes.
</Tip>

<Tip>
  **Test Edge Cases**: Include tests for new users, archived resources, and boundary conditions.
</Tip>

### Systematic Testing Approach

<Steps>
  <Step title="Test Defaults">
    Verify default permissions work as expected:

    * Test with user having no specific rules
    * Confirm entity-level defaults apply
    * Document baseline behavior
  </Step>

  <Step title="Test Basic Rules">
    Validate individual rules:

    * Test each rule in isolation
    * Verify subject selection works
    * Confirm resource targeting is correct
  </Step>

  <Step title="Test Combinations">
    Check rule interactions:

    * Test overlapping rules
    * Verify precedence works correctly
    * Confirm deny overrides allow
  </Step>

  <Step title="Test Groups">
    Validate group-based access:

    * Test group membership inheritance
    * Verify nested groups work
    * Check dynamic membership filters
  </Step>

  <Step title="Test Real Scenarios">
    Use actual use cases:

    * Test common user workflows
    * Verify department access patterns
    * Validate compliance requirements
  </Step>
</Steps>

## Troubleshooting Access Issues

### Common Problems and Solutions

<Accordion title="User cannot access expected resources">
  **Diagnosis steps:**

  1. Use Test Permissions with user and resource
  2. Check if default is Deny
  3. Look for blocking Deny rules
  4. Verify user group memberships
  5. Check resource exists and is active

  **Common fixes:**

  * Add Allow rule for user/group
  * Remove conflicting Deny rule
  * Add user to appropriate group
  * Adjust default permissions
</Accordion>

<Accordion title="User has unexpected access">
  **Diagnosis steps:**

  1. Use Actor Explorer to see all access
  2. Test specific concerning resources
  3. Review applied rules
  4. Check for overly broad Allow rules
  5. Verify group memberships

  **Common fixes:**

  * Add specific Deny rule
  * Narrow existing Allow rules
  * Remove user from groups
  * Change default from Allow to Deny
</Accordion>

<Accordion title="Permissions not updating after changes">
  **Diagnosis steps:**

  1. Wait 1-2 minutes for propagation
  2. Re-test permissions
  3. Check if changes were saved
  4. Verify no errors during save

  **Common fixes:**

  * Clear browser cache
  * Refresh the page
  * Re-save the configuration
  * Contact support if persists
</Accordion>

<Accordion title="Test results don't match actual access">
  **Diagnosis steps:**

  1. Verify testing correct user
  2. Check testing correct resource
  3. Confirm test environment matches production
  4. Review any system-level overrides

  **Common fixes:**

  * Ensure consistent testing parameters
  * Check for environment differences
  * Verify no cached permissions
  * Review audit logs
</Accordion>

## Advanced Testing Scenarios

### Scenario 1: Multi-Level Inheritance

Test complex permission inheritance:

```
User → Group A → Group B → Rule
```

Verify permissions flow correctly through nested groups.

### Scenario 2: Time-Based Access

Test temporal permissions:

* Filter-based rules with date conditions
* Verify access changes over time
* Test expiration handling

### Scenario 3: Conflicting Rules

Test precedence with conflicts:

* User-specific Deny
* Group-level Allow
* Default Allow
* Verify Deny wins

### Scenario 4: Dynamic Membership

Test filter-based groups:

* Change user attributes
* Verify group membership updates
* Test resulting permission changes

## Next Steps

<CardGroup cols={2}>
  <Card title="Configure Rules" icon="gavel" href="/data/access_control/managing-rules">
    Create and manage access control rules
  </Card>

  <Card title="Manage Groups" icon="users" href="/data/access_control/managing-groups">
    Organize users into access control groups
  </Card>

  <Card title="Set Defaults" icon="shield" href="/data/access_control/default-permissions">
    Configure entity-level default permissions
  </Card>

  <Card title="View Overview" icon="map" href="/data/access_control/summary">
    Return to access control overview
  </Card>
</CardGroup>

## Getting Help

If you encounter issues with permission testing:

1. **Check Documentation**: Review relevant sections for your scenario
2. **Contact Support**: Include test parameters and results
3. **Provide Context**: Share rules, groups, and expected behavior
4. **Include Screenshots**: Capture test configurations and results
