Tharga.Team.Entra
3.5.1
dotnet add package Tharga.Team.Entra --version 3.5.1
NuGet\Install-Package Tharga.Team.Entra -Version 3.5.1
<PackageReference Include="Tharga.Team.Entra" Version="3.5.1" />
<PackageVersion Include="Tharga.Team.Entra" Version="3.5.1" />
<PackageReference Include="Tharga.Team.Entra" />
paket add Tharga.Team.Entra --version 3.5.1
#r "nuget: Tharga.Team.Entra, 3.5.1"
#:package Tharga.Team.Entra@3.5.1
#addin nuget:?package=Tharga.Team.Entra&version=3.5.1
#tool nuget:?package=Tharga.Team.Entra&version=3.5.1
Tharga.Team.Entra
Microsoft Entra ID user-directory provider for Tharga Team. Implements IUserDirectoryService over
Microsoft Graph so the platform can:
- Verify that a local user still exists (and is enabled) in Entra — resolved by the stored directory object id, falling back to email/UPN lookup (which also relinks the user).
- List directory-only users — users that exist in Entra but not in the platform.
- Delete a user from Entra (opt-in, from the user-delete flow). Graph performs a soft delete: the user is restorable by an administrator for 30 days, but is removed org-wide immediately.
Registration
builder.Services.AddThargaEntraUserDirectory(builder.Configuration);
Configuration is read from the AzureAd section (TenantId, ClientId, ClientSecret) — the same
section the Tharga platform sign-in already uses. Override or supply values in code:
builder.Services.AddThargaEntraUserDirectory(builder.Configuration, o =>
{
o.ClientSecret = builder.Configuration["Entra:ClientSecret"];
// or plug any Azure.Core TokenCredential (e.g. managed identity):
// o.Credential = new ManagedIdentityCredential();
});
Entra app-registration permissions
Grant the app registration application (app-only) Graph permissions, with admin consent:
| Feature | Permission |
|---|---|
| Verify users, list directory-only users | User.Read.All |
| Delete users from Entra | User.ReadWrite.All |
Deleting also requires the app's service principal to hold a directory role allowed to delete users (e.g. User Administrator) when the target is an administrator-role holder.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Azure.Identity (>= 1.21.0)
- Tharga.Team (>= 3.5.1)
-
net9.0
- Azure.Identity (>= 1.21.0)
- Tharga.Team (>= 3.5.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.