VenafiPS.psm1
<#
.SYNOPSIS PowerShell module to access the features of Venafi Trust Protection Platform REST API .DESCRIPTION Author: Greg Brownstein #> $folders = @('Enum', 'Classes', 'Public', 'Private') foreach ( $folder in $folders) { $files = Get-ChildItem -Path "$PSScriptRoot\$folder\*.ps1" -Recurse Foreach ( $thisFile in $files ) { Try { Write-Verbose ('dot sourcing {0}' -f $thisFile.FullName) . $thisFile.fullname if ( $folder -eq 'Public' ) { Export-ModuleMember -Function $thisFile.Basename } } Catch { Write-Error ("Failed to import function {0}: {1}" -f $thisFile.fullname, $folder) } } } $script:CloudUrl = 'https://api.venafi.cloud' $script:ModuleVersion = '4.0.0' $Script:VenafiSession = New-Object 'VenafiSession' Export-ModuleMember -Variable VenafiSession $aliases = @{ 'ConvertTo-TppDN' = 'ConvertTo-TppPath' 'Get-TppWorkflowDetail' = 'Get-TppWorkflowTicket' 'Get-TppIdentity' = 'Find-TppIdentity' 'Restore-TppCertificate' = 'Invoke-TppCertificateRenewal' 'Get-TppLog' = 'Read-TppLog' 'fto' = 'Find-TppObject' 'ftc' = 'Find-TppCertificate' 'itcr' = 'Invoke-TppCertificateRenewal' 'New-TppSession' = 'New-VenafiSession' 'Invoke-TppRestMethod' = 'Invoke-VenafiRestMethod' 'Get-TppCertificate' = 'Export-VenafiCertificate' 'Get-TppCertificateDetail' = 'Get-VenafiCertificate' } $aliases.GetEnumerator() | ForEach-Object { Set-Alias -Name $_.Key -Value $_.Value } Export-ModuleMember -Alias * # Force TLS 1.2 [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 |