# Interface IActiveDirectoryMethods OptimaJet.Workflow.Plugins.ActiveDirectoryPlugin.Providers.IActiveDirectoryMethods Methods for working with Active Directory. Namespace: [OptimaJet.Workflow.Plugins.ActiveDirectoryPlugin.Providers](https://api.workflowengine.io/active-directory-plugin/OptimaJet.Workflow.Plugins.ActiveDirectoryPlugin.Providers/) ```csharp public interface IActiveDirectoryMethods ``` ## Type Hierarchy - IActiveDirectoryMethods Current type - Implementing types - [DirectoryServicesMethods](https://api.workflowengine.io/active-directory-plugin/OptimaJet.Workflow.Plugins.ActiveDirectoryPlugin.Providers/DirectoryServicesMethods/) - [NovellMethods](https://api.workflowengine.io/active-directory-plugin/OptimaJet.Workflow.Plugins.ActiveDirectoryPlugin.Providers/NovellMethods/) ## Methods `ActiveDirectoryGroup? GetGroupByName(string name, string sourceName)` Get group by name from specific source. ### Parameters | Name | Type | Description | | --- | --- | --- | | `name` | `String` | Group name. CN. | | `sourceName` | `String` | Source name. | ### Returns | Type | Description | | --- | --- | | `ActiveDirectoryGroup` | Group or null if not found. | `List GetAllGroups(string? sourceName = null)` Returns all groups from specific source. Or all groups from all sources if sourceName is null. ### Parameters | Name | Type | Description | | --- | --- | --- | | `sourceName` | `String` | Source name. | ### Returns | Type | Description | | --- | --- | | `List` | List of groups. | `void CreateGroup(string groupName, string sourceName, List usersNames, Dictionary? attributes = null)` Creates group in specific source. ### Parameters | Name | Type | Description | | --- | --- | --- | | `groupName` | `String` | Group name. CN. | | `sourceName` | `String` | Source name. | | `usersNames` | `List` | List of users names. CNs. This users will be added to group. | | `attributes` | `Dictionary` | Additional attributes for group. | `void DeleteGroup(string groupName, string sourceName)` Deletes group from specific source. ### Parameters | Name | Type | Description | | --- | --- | --- | | `groupName` | `String` | Group name. CN. | | `sourceName` | `String` | Source name. | `ActiveDirectoryUser? GetUserByName(string username, string sourceName)` Returns user from specific source. ### Parameters | Name | Type | Description | | --- | --- | --- | | `username` | `String` | User name. CN. | | `sourceName` | `String` | Source name. | ### Returns | Type | Description | | --- | --- | | `ActiveDirectoryUser` | User or null if not found. | `void CreateUser(string username, string sourceName, Dictionary? attributes = null)` Creates user in specific source. ### Parameters | Name | Type | Description | | --- | --- | --- | | `username` | `String` | User name. CN. | | `sourceName` | `String` | Source name. | | `attributes` | `Dictionary` | Additional attributes for user. | `void DeleteUser(string username, string sourceName)` Deletes user from specific source. ### Parameters | Name | Type | Description | | --- | --- | --- | | `username` | `String` | User name. CN. | | `sourceName` | `String` | Source name. | `void AddUserToGroup(string username, string groupName, string sourceName)` Adds user to group in specific source. ### Parameters | Name | Type | Description | | --- | --- | --- | | `username` | `String` | User name. CN. | | `groupName` | `String` | Group name. CN. | | `sourceName` | `String` | Source name. | `void RemoveUserFromGroup(string username, string groupName, string sourceName)` Removes user from group in specific source. ### Parameters | Name | Type | Description | | --- | --- | --- | | `username` | `String` | User name. CN. | | `groupName` | `String` | Group name. CN. | | `sourceName` | `String` | Source name. | `bool IsUserInGroup(string username, string groupName, string sourceName)` Checks if user is in group in specific source. ### Parameters | Name | Type | Description | | --- | --- | --- | | `username` | `String` | User name. CN. | | `groupName` | `String` | Group name. CN. | | `sourceName` | `String` | Source name. | ### Returns | Type | Description | | --- | --- | | `Boolean` | Ture if user is in group. | `List GetAllUsersInGroup(string groupName, string sourceName)` Returns all users in group in specific source. ### Parameters | Name | Type | Description | | --- | --- | --- | | `groupName` | `String` | Group name. CN. | | `sourceName` | `String` | Source name. | ### Returns | Type | Description | | --- | --- | | `List` | List of users. | `List GetSources()` Returns all sources. ### Returns | Type | Description | | --- | --- | | `List` | List of sources. | `ActiveDirectorySource GetSource(string name)` Returns source by name. ### Parameters | Name | Type | Description | | --- | --- | --- | | `name` | `String` | Source name. | ### Returns | Type | Description | | --- | --- | | `ActiveDirectorySource` | Source. | [Previous DirectoryServicesMethods](https://api.workflowengine.io/active-directory-plugin/OptimaJet.Workflow.Plugins.ActiveDirectoryPlugin.Providers/DirectoryServicesMethods/) [Next NovellExtensions](https://api.workflowengine.io/active-directory-plugin/OptimaJet.Workflow.Plugins.ActiveDirectoryPlugin.Providers/NovellExtensions/)