This is a PowerShell module for working with Thycotic Secret Server's web services.
This is a fast publish, there will be a number of changes. Some caveats:
- We do not go out of the way to cover a variety of templates or customizations to templates. Contributions welcome. This is on my list but low priority.
- A number of shortcuts have been taken given that this is a fast publish. Addressing these is on my list.
- Limited testing, limited validation of edge case scenarios
- Limited error handling
- Limited comment based help and examples (some may be outdated)
#Functionality
Search for secrets without triggering an audit:
Extract Secure String password and PSCredential credential object from secrets:
Find folders:
Find templates:
Create new secrets:
Change existing secrets:
Get connected:
#Prerequisites
- You must be using Windows PowerShell 3 or later on the system running this module
- You must enable Secret Server Web Services ahead of time. See product documentation for instructions.
- You must enable Integrated Windows Authentication for Secret Server. This may change. See product documentation for instructions.
- We serialize a default Uri and proxy to SecretServerConfig.xml in the module path - you must have access to that path for this functionality
- The account running these functions must have appropriate access to Secret Server
- Module folder downloaded, unblocked, extracted, available to import
#Instructions
#One time setup:
#Download the repository
#Unblock the zip file
#Extract SecretServer folder to a module path (e.g. $env:USERPROFILE\Documents\WindowsPowerShell\Modules\)
#Each PowerShell session
Import-Module SecretServer #Alternatively, Import-Module "\\Path\To\SecretServer"
#List commands in the module
Get-Command -Module SecretServer
#Get help for a command
Get-Help New-SSConnection -Full
#Optional one time step: Set default Uri, create default proxy
Set-SecretServerConfig -Uri https://FQDN.TO.SECRETSERVER/winauthwebservices/sswinauthwebservice.asmx
New-SSConnection #Uses Uri we just set by default
#Get help for Get-Secret
Get-Help Get-Secret -Full
#List a summary of all secrets
Get-Secret
#Convert stored secret to a credential object you can use in a variety of scenarios
$Credential = (Get-Secret -SearchTerm SVC-WebCommander -as Credential ).Credential
$Credential
<#
UserName : My.Domain\SVC-WebCommander
Password : System.Security.SecureString
#>
#Aside
On an aside, if you don't have a password management solution in place, definitely take a look at Secret Server.
I've been impressed with the product, documentation, and support. It's one of those products that just works, and works well. If you're a non-profit, you'll save a bit...