Table of Contents

Class MicrosoftGraphIdentityManagementService

Namespace
FoundationaLLM.Common.Services.Security
Assembly
FoundationaLLM.Common.dll

Implements group membership services using the Microsoft Graph API.

public class MicrosoftGraphIdentityManagementService : IIdentityManagementService
Inheritance
MicrosoftGraphIdentityManagementService
Implements
Inherited Members
Extension Methods

Remarks

Initializes a new instance of the MicrosoftGraphIdentityManagementService class.

Constructors

MicrosoftGraphIdentityManagementService(GraphServiceClient, ILogger<MicrosoftGraphIdentityManagementService>)

Implements group membership services using the Microsoft Graph API.

public MicrosoftGraphIdentityManagementService(GraphServiceClient graphServiceClient, ILogger<MicrosoftGraphIdentityManagementService> logger)

Parameters

graphServiceClient GraphServiceClient

The GraphServiceClient to be used for API interactions.

logger ILogger<MicrosoftGraphIdentityManagementService>

The logger used for logging.

Remarks

Initializes a new instance of the MicrosoftGraphIdentityManagementService class.

Methods

GetGroupsForPrincipal(string)

Retrieves the group identifiers list of the groups where the specified user principal is a member.

public Task<List<string>> GetGroupsForPrincipal(string userIdentifier)

Parameters

userIdentifier string

The user identifier for which group membership is retrieved. Can be either an object id or a user principal name (UPN).

Returns

Task<List<string>>

GetObjectsByIds(ObjectQueryParameters)

Retrieves user and group objects by the passed in list of IDs.

public Task<List<ObjectQueryResult>> GetObjectsByIds(ObjectQueryParameters parameters)

Parameters

parameters ObjectQueryParameters

Returns

Task<List<ObjectQueryResult>>

GetUserById(string)

Retrieves a user account by its identifier.

public Task<ObjectQueryResult> GetUserById(string userId)

Parameters

userId string

The user identifier used to retrieve a single user account.

Returns

Task<ObjectQueryResult>

GetUserGroupById(string)

Retrieves a group account by its identifier.

public Task<ObjectQueryResult> GetUserGroupById(string groupId)

Parameters

groupId string

The group account identifier used to retrieve a single group account.

Returns

Task<ObjectQueryResult>

GetUserGroups(ObjectQueryParameters)

Retrieves a list of group accounts with filtering and paging options.

public Task<PagedResponse<ObjectQueryResult>> GetUserGroups(ObjectQueryParameters queryParams)

Parameters

queryParams ObjectQueryParameters

The filtering and paging options used when retrieving group accounts.

Returns

Task<PagedResponse<ObjectQueryResult>>

GetUsers(ObjectQueryParameters)

Retrieves a list of user accounts with filtering and paging options.

public Task<PagedResponse<ObjectQueryResult>> GetUsers(ObjectQueryParameters queryParams)

Parameters

queryParams ObjectQueryParameters

The filtering and paging options used when retrieving users.

Returns

Task<PagedResponse<ObjectQueryResult>>