From 09c3d5c68bbcf63334e103a3abaa0a67de9b5f6f Mon Sep 17 00:00:00 2001 From: GraceSolutions Date: Wed, 3 Jun 2026 17:38:45 -0400 Subject: [PATCH] M8: CHANGELOG + DesignSpec for 2026.06.03.2136 (CRUD + auth provider expansion); refresh published manifest/binary --- CHANGELOG.md | 13 ++++ Module/PSInfisicalAPI/PSInfisicalAPI.psd1 | 29 +++++++- Module/PSInfisicalAPI/bin/PSInfisicalAPI.dll | Bin 75264 -> 151552 bytes docs/DesignSpec.md | 68 ++++++++++++++++--- 4 files changed, 96 insertions(+), 14 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7182481..dd1a5e3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,19 @@ The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) loos ## Unreleased +## 2026.06.03.2136 + +- Build produced from commit d9822aab7a4a. +- **Resource CRUD expansion**: Added full Get/New/Update/Remove cmdlet families for Projects, Environments, Folders, and Tags (20 new cmdlets): + - Projects: `Get-InfisicalProjects`, `Get-InfisicalProject`, `New-InfisicalProject`, `Update-InfisicalProject`, `Remove-InfisicalProject`. + - Environments: `Get-InfisicalEnvironments`, `Get-InfisicalEnvironment`, `New-InfisicalEnvironment`, `Update-InfisicalEnvironment`, `Remove-InfisicalEnvironment`. + - Folders: `Get-InfisicalFolders`, `Get-InfisicalFolder`, `New-InfisicalFolder`, `Update-InfisicalFolder`, `Remove-InfisicalFolder`. + - Tags: `Get-InfisicalTags`, `Get-InfisicalTag`, `New-InfisicalTag`, `Update-InfisicalTag`, `Remove-InfisicalTag`. +- **Secret mutation cmdlets**: Added `New-InfisicalSecret`, `Update-InfisicalSecret`, and `Remove-InfisicalSecret`; extended `InfisicalSecretsClient` with corresponding create/update/delete operations. +- **Additional auth providers**: `Connect-Infisical` now supports JWT (`-Jwt -IdentityId`), OIDC (`-Jwt -IdentityId`), LDAP (`-Username -Password`), Azure (`-Jwt -IdentityId`), and GCP IAM (`-Jwt -IdentityId`) via dedicated parameter sets. Common identity-login flow is centralized in `IdentityLoginExecutor`. +- Endpoint registry expanded with login routes (`/api/v1/auth/{jwt|oidc|ldap|azure|gcp}-auth/login`) and CRUD routes for projects (v2), environments, folders, tags, and secret mutations. +- Test suite expanded to 139 passing tests, including mapper round-trips for projects/environments/folders/tags, secret mutation DTO shapes, and request-body validation for each new auth provider. + ## 2026.06.03.0131 - Build produced from commit 7be0b7b42008. diff --git a/Module/PSInfisicalAPI/PSInfisicalAPI.psd1 b/Module/PSInfisicalAPI/PSInfisicalAPI.psd1 index cd3acdd..3e80f15 100644 --- a/Module/PSInfisicalAPI/PSInfisicalAPI.psd1 +++ b/Module/PSInfisicalAPI/PSInfisicalAPI.psd1 @@ -1,6 +1,6 @@ @{ RootModule = 'PSInfisicalAPI.psm1' - ModuleVersion = '2026.06.03.0131' + ModuleVersion = '2026.06.03.2136' GUID = 'b8a2f3d4-7c51-4d2f-9e6a-1f0c8b3d4e51' Author = 'Grace Solutions' CompanyName = 'Grace Solutions' @@ -14,8 +14,31 @@ 'Disconnect-Infisical', 'Get-InfisicalSecrets', 'Get-InfisicalSecret', + 'New-InfisicalSecret', + 'Update-InfisicalSecret', + 'Remove-InfisicalSecret', 'ConvertTo-InfisicalSecretDictionary', - 'Export-InfisicalSecrets' + 'Export-InfisicalSecrets', + 'Get-InfisicalProjects', + 'Get-InfisicalProject', + 'New-InfisicalProject', + 'Update-InfisicalProject', + 'Remove-InfisicalProject', + 'Get-InfisicalEnvironments', + 'Get-InfisicalEnvironment', + 'New-InfisicalEnvironment', + 'Update-InfisicalEnvironment', + 'Remove-InfisicalEnvironment', + 'Get-InfisicalFolders', + 'Get-InfisicalFolder', + 'New-InfisicalFolder', + 'Update-InfisicalFolder', + 'Remove-InfisicalFolder', + 'Get-InfisicalTags', + 'Get-InfisicalTag', + 'New-InfisicalTag', + 'Update-InfisicalTag', + 'Remove-InfisicalTag' ) AliasesToExport = @() VariablesToExport = @() @@ -27,7 +50,7 @@ LicenseUri = 'https://www.gnu.org/licenses/agpl-3.0.html' ProjectUri = 'https://prod.git.gracesolution.info/gsadmin/PSInfisicalAPI' ReleaseNotes = 'See CHANGELOG.md in the project repository for release history.' - CommitHash = '7be0b7b42008' + CommitHash = 'd9822aab7a4a' } } } \ No newline at end of file diff --git a/Module/PSInfisicalAPI/bin/PSInfisicalAPI.dll b/Module/PSInfisicalAPI/bin/PSInfisicalAPI.dll index 0ba2ef8e5d3436364f7cb6aa330abc4ca7ee9046..72da4ed07bb9ab1b8de515b598b68715f5e23e56 100644 GIT binary patch literal 151552 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

kW9nY7!cDCDgRf}bIu3g~VEqE2xT)Wu0 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 literal 75264 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 M{r~^{zsG_94fAcHbN~PV diff --git a/docs/DesignSpec.md b/docs/DesignSpec.md index 030f81d..8b1a552 100644 --- a/docs/DesignSpec.md +++ b/docs/DesignSpec.md @@ -6,15 +6,38 @@ The goal is to establish a strong, reusable, secure framework first, then initially implement secret retrieval and export workflows. -Initial public cmdlets: +Public cmdlets: ```powershell Connect-Infisical Disconnect-Infisical Get-InfisicalSecrets Get-InfisicalSecret +New-InfisicalSecret +Update-InfisicalSecret +Remove-InfisicalSecret ConvertTo-InfisicalSecretDictionary Export-InfisicalSecrets +Get-InfisicalProjects +Get-InfisicalProject +New-InfisicalProject +Update-InfisicalProject +Remove-InfisicalProject +Get-InfisicalEnvironments +Get-InfisicalEnvironment +New-InfisicalEnvironment +Update-InfisicalEnvironment +Remove-InfisicalEnvironment +Get-InfisicalFolders +Get-InfisicalFolder +New-InfisicalFolder +Update-InfisicalFolder +Remove-InfisicalFolder +Get-InfisicalTags +Get-InfisicalTag +New-InfisicalTag +Update-InfisicalTag +Remove-InfisicalTag ``` Infisical’s public API is REST-based and provides programmatic access for managing secrets and related resources. Current Infisical documentation shows the list-secrets endpoint under `/api/v4/secrets`, the single-secret retrieval endpoint under `/api/v4/secrets/{secretName}`, and Universal Auth login under `/api/v1/auth/universal-auth/login`. The implementation must centralize API endpoint definitions because Infisical uses different API versions across resource families. ([Infisical Blog][1]) @@ -198,8 +221,31 @@ Example shape: 'Disconnect-Infisical', 'Get-InfisicalSecrets', 'Get-InfisicalSecret', + 'New-InfisicalSecret', + 'Update-InfisicalSecret', + 'Remove-InfisicalSecret', 'ConvertTo-InfisicalSecretDictionary', - 'Export-InfisicalSecrets' + 'Export-InfisicalSecrets', + 'Get-InfisicalProjects', + 'Get-InfisicalProject', + 'New-InfisicalProject', + 'Update-InfisicalProject', + 'Remove-InfisicalProject', + 'Get-InfisicalEnvironments', + 'Get-InfisicalEnvironment', + 'New-InfisicalEnvironment', + 'Update-InfisicalEnvironment', + 'Remove-InfisicalEnvironment', + 'Get-InfisicalFolders', + 'Get-InfisicalFolder', + 'New-InfisicalFolder', + 'Update-InfisicalFolder', + 'Remove-InfisicalFolder', + 'Get-InfisicalTags', + 'Get-InfisicalTag', + 'New-InfisicalTag', + 'Update-InfisicalTag', + 'Remove-InfisicalTag' ) AliasesToExport = @() PrivateData = @{ @@ -698,29 +744,29 @@ Internal implementation must still use proper typed path handling. # 12. Authentication Design -## 12.1 Supported Initial Auth Types +## 12.1 Supported Auth Types -Initial implementation: +Currently implemented: ```text Universal Auth Token Auth +JWT Auth +OIDC Auth +LDAP Auth +Azure Auth +GCP IAM Auth ``` -Infisical documents identity authentication modes such as Universal Auth and Token Auth for API access, and API interaction requires an access token. ([Infisical Blog][3]) +Each implemented provider is exposed as a dedicated `Connect-Infisical` parameter set. Identity-based providers (JWT, OIDC, Azure, GCP IAM) share a common login flow via `IdentityLoginExecutor` and POST to `/api/v1/auth/{provider}-auth/login`. Infisical documents identity authentication modes such as Universal Auth and Token Auth for API access, and API interaction requires an access token. ([Infisical Blog][3]) ## 12.2 Future Auth Types Design must allow future support for: ```text -AWS Auth -Azure Auth -GCP Auth +AWS IAM Auth Kubernetes Auth -OIDC Auth -JWT Auth -LDAP Auth TLS Certificate Auth Alibaba Cloud Auth OCI Auth