From 3c8704f671a3525590387c1db19d090a5f021ca6 Mon Sep 17 00:00:00 2001 From: Alexis Lazcano Date: Tue, 17 Dec 2024 15:32:29 -0600 Subject: [PATCH] initial commit --- .gitignore | 9 +++ PSIsonas.psd1 | 138 ++++++++++++++++++++++++++++++++++++++++++++++ PSIsonas.psm1 | 82 +++++++++++++++++++++++++++ PSIsonas.psproj | 16 ++++++ README.md | 16 ++++++ bin/PSIsonas.psd1 | 138 ++++++++++++++++++++++++++++++++++++++++++++++ bin/PSIsonas.psm1 | Bin 0 -> 40144 bytes bin/README.md | 16 ++++++ 8 files changed, 415 insertions(+) create mode 100644 .gitignore create mode 100644 PSIsonas.psd1 create mode 100644 PSIsonas.psm1 create mode 100644 PSIsonas.psproj create mode 100644 README.md create mode 100644 bin/PSIsonas.psd1 create mode 100644 bin/PSIsonas.psm1 create mode 100644 bin/README.md diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..6c9c12f --- /dev/null +++ b/.gitignore @@ -0,0 +1,9 @@ +*.TempPoint.* +*.Export.* +*.psprojs +*.RestorePoint.* +*.Run.ps1 +*.Package.ps1 +CustomMenu.inf +Test-*.ps1 +*.psbuild \ No newline at end of file diff --git a/PSIsonas.psd1 b/PSIsonas.psd1 new file mode 100644 index 0000000..a358003 --- /dev/null +++ b/PSIsonas.psd1 @@ -0,0 +1,138 @@ +<# + =========================================================================== + Created with: SAPIEN Technologies, Inc., PowerShell Studio 2024 v5.8.251 + Created on: 12/17/2024 10:35 AM + Created by: Alexis Lazcano + Organization: Saratoga Corporate Management Group, LLC + Filename: PSIsonas.psd1 + ------------------------------------------------------------------------- + Module Manifest + ------------------------------------------------------------------------- + Module Name: PSIsonas + =========================================================================== +#> + + +@{ + + # Script module or binary module file associated with this manifest + RootModule = 'PSIsonas.psm1' + + # Version number of this module. + ModuleVersion = '1.0.0.0' + + # ID used to uniquely identify this module + GUID = '1fd60578-734d-4e9e-8c94-8f45bd4b92aa' + + # Author of this module + Author = 'Alexis Lazcano' + + # Company or vendor of this module + CompanyName = 'Saratoga Corporate Management Group, LLC' + + # Copyright statement for this module + Copyright = '(c) 2024. All rights reserved.' + + # Description of the functionality provided by this module + Description = 'Powershell wrapper for Isonas Pure Access Cloud.' + + # Supported PSEditions + # CompatiblePSEditions = @('Core', 'Desktop') + + # Minimum version of the Windows PowerShell engine required by this module + PowerShellVersion = '5.1' + + # Name of the Windows PowerShell host required by this module + PowerShellHostName = '' + + # Minimum version of the Windows PowerShell host required by this module + PowerShellHostVersion = '' + + # Minimum version of the .NET Framework required by this module + DotNetFrameworkVersion = '4.5.2' + + # Minimum version of the common language runtime (CLR) required by this module + # CLRVersion = '' + + # Processor architecture (None, X86, Amd64, IA64) required by this module + ProcessorArchitecture = 'None' + + # Modules that must be imported into the global environment prior to importing + # this module + RequiredModules = @() + + # Assemblies that must be loaded prior to importing this module + RequiredAssemblies = @() + + # Script files (.ps1) that are run in the caller's environment prior to + # importing this module + ScriptsToProcess = @() + + # Type files (.ps1xml) to be loaded when importing this module + TypesToProcess = @() + + # Format files (.ps1xml) to be loaded when importing this module + FormatsToProcess = @() + + # Modules to import as nested modules of the module specified in + # ModuleToProcess + NestedModules = @() + + # Functions to export from this module + FunctionsToExport = @( + 'Get-IsonasRequestHeaders', + 'Test-IsonasConnection', + 'Get-IsonasUsers' + ) #For performance, list functions explicitly + + # Cmdlets to export from this module + CmdletsToExport = '*' + + # Variables to export from this module + VariablesToExport = '*' + + # Aliases to export from this module + AliasesToExport = '*' #For performance, list alias explicitly + + # DSC class resources to export from this module. + #DSCResourcesToExport = '' + + # List of all modules packaged with this module + ModuleList = @() + + # List of all files packaged with this module + FileList = @() + + # Private data to pass to the module specified in ModuleToProcess. This may also contain a PSData hashtable with additional module metadata used by PowerShell. + PrivateData = @{ + + #Support for PowerShellGet galleries. + PSData = @{ + + # Tags applied to this module. These help with module discovery in online galleries. + # Tags = @() + + # A URL to the license for this module. + # LicenseUri = '' + + # A URL to the main website for this project. + # ProjectUri = '' + + # A URL to an icon representing this module. + # IconUri = '' + + # ReleaseNotes of this module + # ReleaseNotes = '' + + } # End of PSData hashtable + + } # End of PrivateData hashtable +} + + + + + + + + diff --git a/PSIsonas.psm1 b/PSIsonas.psm1 new file mode 100644 index 0000000..8d49e48 --- /dev/null +++ b/PSIsonas.psm1 @@ -0,0 +1,82 @@ +<# + =========================================================================== + Created on: 12/17/2024 10:35 AM + Created by: Alexis Lazcano + Organization: Saratoga Corporate Management Group, LLC + Filename: PSIsonas.psm1 + ------------------------------------------------------------------------- + Module Name: PSIsonas + =========================================================================== +#> + +Function Get-IsonasRequestHeaders +{ + $tokenPair = "$env:ISONAS_TokenID`:$env:ISONAS_TokenValue" + $tokenBase64 = [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes($tokenPair)) + $Headers = @{ + 'Authorization' = "Basic $tokenBase64" + 'Content-Type' = 'application/merge-patch+json' + } + return $Headers +} + +function Test-IsonasConnection +{ + $API_Users = $env:ISONAS_API_URL + "users" + $Response = Invoke-RestMethod -Uri "$API_Users/?includeDisabled=false&limit=1" -Headers $(Get-IsonasRequestHeaders) + if ($Reponse.Status -eq "Success") { return $true } + else + { + return $false + } + +} + +function Get-IsonasUsers { + param + ( + [Parameter(Position = 1)] + [switch]$All, + [Parameter(Mandatory = $false, + Position = 2)] + [ValidateNotNullOrEmpty()] + [int]$Limit = 200, + [Parameter(Position = 3)] + [bool]$IncludeDisabled = $false + ) + $API_Users = $env:ISONAS_API_URL + "users" + + if ($All) + { + Write-Host "All users was used" + $TargetUrl = "$API_Users/" + } + else + { + Write-Host "All users was NOT used" + $TargetUrl = "$API_Users/?includeDisabled=$IncludeDisabled&limit=$Limit" + } + + $Response = Invoke-RestMethod -Uri $TargetUrl -Headers $(Get-IsonasRequestHeaders) -Method GET + + $flattened = $response | ForEach-Object { + $obj = [PSCustomObject]@{ + Id = $_.Id + CreatedTime = $_.createdTime + UpdatedTime = $_.updatedTime + FirstName = $_.firstName + LastName = $_.lastName + AreaID = $_.areaId + EmployeeId = $_.employeeId + IsDisabled = $_.isDisabled + } + foreach ($field in $_.userDefinedFields) + { + $propertyName = $field.name -replace '\s', '' + $obj | Add-Member -MemberType NoteProperty -Name $propertyName -Value $field.value + } + $obj + } + + return $flattened +} diff --git a/PSIsonas.psproj b/PSIsonas.psproj new file mode 100644 index 0000000..9af1108 --- /dev/null +++ b/PSIsonas.psproj @@ -0,0 +1,16 @@ + + 2.1 + 1fd60578-734d-4e9e-8c94-8f45bd4b92aa + 1 + True + Local Machine - PowerShell V5 (64 Bit) + + + PSIsonas.psd1 + PSIsonas.psm1 + Test-Module.ps1 + .gitignore + README.md + + Test-Module.ps1 + \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..16ce696 --- /dev/null +++ b/README.md @@ -0,0 +1,16 @@ +# PSIsonas +--Overview high level of the program.-- +## Description +--Description of the program.-- +## Getting Started +--Information about getting the program setup.-- +## Help +--Additional information need to use the software.-- +## Authors +Alexis Lazcano +## Version History +2.1 +## License +--Software license information.-- +## Acknowledgments +--Place any acknowledgments here.-- diff --git a/bin/PSIsonas.psd1 b/bin/PSIsonas.psd1 new file mode 100644 index 0000000..a358003 --- /dev/null +++ b/bin/PSIsonas.psd1 @@ -0,0 +1,138 @@ +<# + =========================================================================== + Created with: SAPIEN Technologies, Inc., PowerShell Studio 2024 v5.8.251 + Created on: 12/17/2024 10:35 AM + Created by: Alexis Lazcano + Organization: Saratoga Corporate Management Group, LLC + Filename: PSIsonas.psd1 + ------------------------------------------------------------------------- + Module Manifest + ------------------------------------------------------------------------- + Module Name: PSIsonas + =========================================================================== +#> + + +@{ + + # Script module or binary module file associated with this manifest + RootModule = 'PSIsonas.psm1' + + # Version number of this module. + ModuleVersion = '1.0.0.0' + + # ID used to uniquely identify this module + GUID = '1fd60578-734d-4e9e-8c94-8f45bd4b92aa' + + # Author of this module + Author = 'Alexis Lazcano' + + # Company or vendor of this module + CompanyName = 'Saratoga Corporate Management Group, LLC' + + # Copyright statement for this module + Copyright = '(c) 2024. All rights reserved.' + + # Description of the functionality provided by this module + Description = 'Powershell wrapper for Isonas Pure Access Cloud.' + + # Supported PSEditions + # CompatiblePSEditions = @('Core', 'Desktop') + + # Minimum version of the Windows PowerShell engine required by this module + PowerShellVersion = '5.1' + + # Name of the Windows PowerShell host required by this module + PowerShellHostName = '' + + # Minimum version of the Windows PowerShell host required by this module + PowerShellHostVersion = '' + + # Minimum version of the .NET Framework required by this module + DotNetFrameworkVersion = '4.5.2' + + # Minimum version of the common language runtime (CLR) required by this module + # CLRVersion = '' + + # Processor architecture (None, X86, Amd64, IA64) required by this module + ProcessorArchitecture = 'None' + + # Modules that must be imported into the global environment prior to importing + # this module + RequiredModules = @() + + # Assemblies that must be loaded prior to importing this module + RequiredAssemblies = @() + + # Script files (.ps1) that are run in the caller's environment prior to + # importing this module + ScriptsToProcess = @() + + # Type files (.ps1xml) to be loaded when importing this module + TypesToProcess = @() + + # Format files (.ps1xml) to be loaded when importing this module + FormatsToProcess = @() + + # Modules to import as nested modules of the module specified in + # ModuleToProcess + NestedModules = @() + + # Functions to export from this module + FunctionsToExport = @( + 'Get-IsonasRequestHeaders', + 'Test-IsonasConnection', + 'Get-IsonasUsers' + ) #For performance, list functions explicitly + + # Cmdlets to export from this module + CmdletsToExport = '*' + + # Variables to export from this module + VariablesToExport = '*' + + # Aliases to export from this module + AliasesToExport = '*' #For performance, list alias explicitly + + # DSC class resources to export from this module. + #DSCResourcesToExport = '' + + # List of all modules packaged with this module + ModuleList = @() + + # List of all files packaged with this module + FileList = @() + + # Private data to pass to the module specified in ModuleToProcess. This may also contain a PSData hashtable with additional module metadata used by PowerShell. + PrivateData = @{ + + #Support for PowerShellGet galleries. + PSData = @{ + + # Tags applied to this module. These help with module discovery in online galleries. + # Tags = @() + + # A URL to the license for this module. + # LicenseUri = '' + + # A URL to the main website for this project. + # ProjectUri = '' + + # A URL to an icon representing this module. + # IconUri = '' + + # ReleaseNotes of this module + # ReleaseNotes = '' + + } # End of PSData hashtable + + } # End of PrivateData hashtable +} + + + + + + + + diff --git a/bin/PSIsonas.psm1 b/bin/PSIsonas.psm1 new file mode 100644 index 0000000000000000000000000000000000000000..4db2cfa3325f2b1767ce499c0ce4c256db28e2cc GIT binary patch literal 40144 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 literal 0 HcmV?d00001 diff --git a/bin/README.md b/bin/README.md new file mode 100644 index 0000000..16ce696 --- /dev/null +++ b/bin/README.md @@ -0,0 +1,16 @@ +# PSIsonas +--Overview high level of the program.-- +## Description +--Description of the program.-- +## Getting Started +--Information about getting the program setup.-- +## Help +--Additional information need to use the software.-- +## Authors +Alexis Lazcano +## Version History +2.1 +## License +--Software license information.-- +## Acknowledgments +--Place any acknowledgments here.--