-
Notifications
You must be signed in to change notification settings - Fork 6
Open
Description
Needs some fun restructuring and added complexity of module projects. Suggestion for new structure:
- AzAuth.Core - Contains core auth logic and wraps MSAL packages. Will be loaded into custom ALC for isolation. Same as now.
- AzAuth.Abstractions - New project which will expose an abstract
AzAuthGetTokenCmdletwhich can be implemented by a PowerShell module through inheritance. This will be published as a Nuget package. - AzAuth.PS - Implements AzAuth.Abstractions and its abstract
AzAuthGetTokenCmdlet, as well as the cache cmdlets like today. Will instead use a new project to manage loading assemblies, since the AzAuth.Abstractions with the cmdlet must be accessible through by PowerShell (loaded into default ALC) - AzAuth.Loader - Managed specific loading of assemblies, uses [ModuleInitializer] to run code when AzAuth.Loader assembly is loaded (because AzAuth may itself be loaded into a custom ALC so it can't load the AzAuth.Abstractions into the current ALC). AzAuth.Abstractions is loaded into default ALC, AzAuth.Core is loaded into custom ALC.
May need tweaking but should work.
Metadata
Metadata
Assignees
Labels
No labels