> For the complete documentation index, see [llms.txt](https://docs.amitysolutions.com/ekoai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.amitysolutions.com/ekoai/getting-started/eko/eko-ad-sync/system-architecture-and-components/key-components-and-roles.md).

# Key Components and Roles

The Eko AD Sync solution is built on several interacting components, deployed across both your Customer Data Center (on-premises) and the Eko. Understanding the role of each component is essential for proper setup and maintenance.

## 1. Eko Active Directory Connector (EkoADC)

The EkoADC is the central component deployed within the customer's infrastructure.

<table data-header-hidden><thead><tr><th width="227.2421875">Feature</th><th>Description</th></tr></thead><tbody><tr><td>Definition</td><td>Eko’s proprietary software is designed for Eko user integration with Microsoft Active Directory.</td></tr><tr><td>Location</td><td>Deployed at the Customer Data Center (on-premises). It can be installed on-premises or on the cloud.</td></tr><tr><td>Interface</td><td><p>EkoADC provides a minimalistic web interface that allows setting up connection configurations, synchronization schedule, and event triggering synchronization manually.</p><p>The interface provides information on previous synchronization cycles, with a highlight on errors.</p><p>Usually, the Eko team support is the only one who manages the EkoADC. However, if a customer wishes to have access, it is possible after the training.</p></td></tr><tr><td>Primary Role</td><td>Responsible for two main tasks: user synchronization and authentication.</td></tr><tr><td>Technical Function</td><td>It performs LDAP binding for authentication and LDAP search for querying users from the directory database.</td></tr><tr><td>Communication</td><td>Connects to the customer's Active Directory (AD) via LDAP/LDAPS. Communicates externally with the Eko/EkoIDMAPI via HTTPS.</td></tr><tr><td>Software</td><td>Runs on a securely hardened Ubuntu image.</td></tr></tbody></table>

## 2. Microsoft Active Directory (AD) / Customer Directory

The Active Directory (AD) is the source of truth for user information within your organization.

<table data-header-hidden><thead><tr><th width="210.0859375">Feature</th><th>Description</th></tr></thead><tbody><tr><td>Definition</td><td>A directory service developed by Microsoft for Windows networks, used for centralized domain management and identity-related services.</td></tr><tr><td>Location</td><td>Located in the Customer Data Center (on-premises).</td></tr><tr><td>Data Stored</td><td>Holds User profiles and User credentials.</td></tr><tr><td>Interaction</td><td>EkoADC requires direct connection and access (LDAP/LDAPS) to the Microsoft AD to pull user data and verify credentials.</td></tr></tbody></table>

## 3. Eko Identity Management API (EkoIDMAPI)

EkoIDMAPI is a custom API that handles identity processes within the Eko environment.

<table data-header-hidden><thead><tr><th width="244.1171875">Feature</th><th>Description</th></tr></thead><tbody><tr><td>Definition</td><td>An Eko custom API for user synchronization and authentication.</td></tr><tr><td>Location</td><td>Hosted within the Eko Cloud.</td></tr><tr><td>Interface</td><td><p>EkoIDMAPI provides a minimalistic web interface that allows setting up connection configurations and user objects mapping.</p><p>The Eko team support is the only one who has access to the EkoIDMAPI interface.</p></td></tr><tr><td>Primary Role</td><td>Works with EkoADC to integrate external user accounts. Defines how external user accounts are mapped to Eko's user object.</td></tr><tr><td>Communication</td><td>Receives user synchronization data from EkoADC and handles authentication results.</td></tr></tbody></table>

## 4. Eko Application

The Eko Application hosts the central application services and data storage for the Eko platform.

| Eko DB               | The Eko Database stores the synchronized user profile data, credentials (if local authentication is enabled), and configuration information. |
| -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| Eko Backend Services | These services (including EkoIDMAPI, Eko API, and QueueJob) manage the synchronization pipeline and reporting.                               |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.amitysolutions.com/ekoai/getting-started/eko/eko-ad-sync/system-architecture-and-components/key-components-and-roles.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
