PSWorkspaceOneAccess: a practical PowerShell module for Omnissa Workspace ONE Access API work
I do a lot of automation around Omnissa Workspace ONE Access, and I wanted a small, reusable PowerShell module that takes care of the…
PSWorkspaceOneAccess: a practical PowerShell module for Omnissa Workspace ONE Access API work
I do a lot of automation around Omnissa Workspace ONE Access, and I wanted a small, reusable PowerShell module that takes care of the “boring” parts: getting an OAuth token and calling the API in a consistent way.
That’s what PSWorkspaceOneAccess is: a collection of PowerShell functions to authenticate and perform common Workspace ONE Access operations (users, directories, policies, audit, web apps, magic token).
What’s in the module
The module exposes a set of cmdlets, including:
Authentication / token
Open-WS1AccessConnection (client credentials → access token) Get-WS1MagicToken, Reset-WS1MagicToken, Remove-WS1MagicToken
Users
Get-WS1User, Get-WS1UserByUsername Add-WS1User, Update-WS1User, Remove-WS1User Add-WS1ADUser, Update-WS1ADUser
Directories
Get-WS1Directory, Get-WS1DirectoryById Sync-WS1Directory
Policies / Auth methods / Audit / Web apps
Get-WS1PolicyList Get-WS1AuthenticationMethods Get-WS1AuditInformation, Get-WS1AuditReport Get-WS1WebApps, Get-WS1WebAppAssignments
Install the module
Option 1 — Install from PowerShell Gallery
Install-Module -Name PSWorkspaceOneAccess -Scope CurrentUser
Option 2 — Import directly from your git checkout
Import-Module /path/to/PSWorkspaceOneAccess/PSWorkspaceOneAccess.psd1
The basic pattern: authenticate once, reuse the token
Most functions follow the same model:
- Get an access token once using Open-WS1AccessConnection
- Pass -AccessURL and -AccessToken to other cmdlets
Example:
# Load your credentials however you prefer
. "$PSScriptRoot/Private/credentials.ps1"
if ([string]::IsNullOrEmpty($accessToken)) {
$accessToken = Open-WS1AccessConnection -ClientId $clientId -ClientSecret $clientSecret -AccessURL $accessURL
}
$policies = Get-WS1PolicyList -AccessURL $accessURL -AccessToken $accessToken
"Policy count: {0}" -f $policies.Count
$authMethods = Get-WS1AuthenticationMethods -AccessURL $accessURL -AccessToken $accessToken
$user = Get-WS1UserByUsername -AccessURL $accessURL -AccessToken $accessToken -Username "rsmoot"
What each parameter typically represents -AccessURL: your Workspace ONE Access base URL (tenant URL) -ClientId / -ClientSecret: OAuth client credentials -AccessToken: the bearer token returned by Open-WS1AccessConnection
You can find the PSWorkspaceOneAccess module on GitHub and in the PowerShell Gallery: • GitHub repository: https://github.com/sdewyser/PSWorkspaceOneAccess • PowerShell Gallery: https://www.powershellgallery.com/packages/PSWorkspaceOneAccess/1.0.0
메타데이터
- post_id
- e8f295e233e3
- slug
- psworkspaceoneaccess-a-practical-powershell-module-for-omnissa-workspace-one-access-api-work-e8f295e233e3
- url
- https://medium.com/@dewyser/psworkspaceoneaccess-a-practical-powershell-module-for-omnissa-workspace-one-access-api-work-e8f295e233e3
- canonical_url
- https://medium.com/@dewyser/psworkspaceoneaccess-a-practical-powershell-module-for-omnissa-workspace-one-access-api-work-e8f295e233e3
- author_url
- https://medium.com/@dewyser
- status
- ok
- fetched_at
- 2026-07-14 22:43:35