EntraCredentialExpiry.psd1
|
@{ RootModule = 'EntraCredentialExpiry.psm1' ModuleVersion = '0.2.0' GUID = 'f3c2a7e4-1b9d-4e6a-8c2f-9a7b5d1e0c33' Author = 'Vijay Kumar G' CompanyName = 'fivenumber.com' Copyright = '(c) Vijay Kumar G. MIT License.' Description = 'Reminds you before Entra (Azure AD) app registration and enterprise application credentials (client secrets and certificates) expire. Entra does not email you about client secret expiry; this reads the credentials via Microsoft Graph, buckets them by your own expiry windows, and (optionally) sends a Teams card or email. Read-only. Built for scheduled, unattended runs (Azure Automation, Azure Functions, GitHub Actions).' PowerShellVersion = '7.2' RequiredModules = @( @{ ModuleName = 'Microsoft.Graph.Authentication'; ModuleVersion = '2.0.0' } ) FunctionsToExport = @('Get-EntraCredentialExpiry','Send-EntraCredentialExpiryAlert') CmdletsToExport = @() VariablesToExport = @() AliasesToExport = @() PrivateData = @{ PSData = @{ Tags = @('Entra','AzureAD','Microsoft365','Graph','Security','Governance','Secrets','Certificates','Expiry','AppRegistration') LicenseUri = 'https://github.com/gvijaikumar9/EntraCredentialExpiry/blob/main/LICENSE' ProjectUri = 'https://github.com/gvijaikumar9/EntraCredentialExpiry' ReleaseNotes = 'v0.2.0 - Production hardening: automatic retry on Graph throttling (429) and transient 5xx with Retry-After honoured; robust UTC date normalisation; per-channel isolation in Send-EntraCredentialExpiryAlert (one channel failing no longer blocks the other, and the cmdlet throws on any delivery failure so scheduled hosts record it); -WhatIf/-Confirm support; PortalUrl added to CSV. v0.1.0 - Get-EntraCredentialExpiry (app registrations + enterprise apps, secrets + certificates, tiered windows, console/CSV/HTML) and Send-EntraCredentialExpiryAlert (Teams card + email). App-only Graph, read-only.' } } } |