Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 9 additions & 10 deletions cmdlet-tests-a2a.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -135,8 +135,6 @@ $newWindowsPolicyStr = '{
"InvalidConnectionPolicy": false
}'
$newWindowsPolicyBody = $newWindowsPolicyStr.Replace("`n", "").Replace("`r", "").Replace(" ", "")
$newAccessRequestStr = '{"AccountId": #ACCOUNT_ID#,"SystemId": #ASSET_ID#,"AccessRequestType": "SSH"}'
$newAccessRequestBody = $newAccessRequestStr.Replace("`n", "").Replace("`r", "").Replace(" ", "")

# managedsystem = {'properties':{'PlatformId':547,'NetworkAddress':'sg-2019-ads.sg.lab','Name':'sg-2019-ads'},'fa':{'properties':{'Name':'sb-sa'},'password':'Test1234'},'ma':{'properties':{'Name':'sb-aa1'},'password':'Test1234'}}
# managedsystem = {'properties':{'PlatformId':270,'NetworkAddress':'sg-ubuntu1904.sg.lab','Name':'sg-ubuntu1904'},'fa':{'properties':{'Name':'root'},'password':'test123'},'ma':{'properties':{'Name':'sb-aa1'},'password':'Test1234'},'sshkey':'data/smoke_ssh_rsa','invalidsymbols':['\n', '\r']}
Expand Down Expand Up @@ -202,7 +200,9 @@ function Cleanup {
}
}
Remove-SafeguardUser -UserToDelete $userUsername > $null
Remove-SafeguardUser -UserToDelete $certUserName > $null
if ($null -ne $certUserName){
Remove-SafeguardUser -UserToDelete $certUserName > $null
}

$allPolicies = Get-SafeguardAccessPolicy
if ($null -ne $allPolicies) {
Expand Down Expand Up @@ -242,7 +242,6 @@ function FindAssetAccount($index) {
Write-Host "Failed to find the account " $assetsToCreate[$index].AssetAccountDescription
return
}

return $accounts[0]
}

Expand All @@ -251,23 +250,24 @@ $ready = $true
try {
# Create-User
#region Users

New-SafeguardUser -NewUserName "Testing" -FirstName "Test" -LastName "ing" -NoPassword -Provider -1 > $null
$secPassword = "root4EDMZ" | ConvertTo-SecureString -AsPlainText -Force
Set-SafeguardUserPassword -Password $secPassword -UserToEdit "Testing" > $null
Edit-SafeguardUser -UserToEdit "Testing" -EmailAddress "blah@test.com" > $null
$userUsername = Get-SafeguardUser -UserToGet "Testing"
#endregion

# Create-CertificateUser
#region Users
infoResult "New-SafeguardUser -Verbose -NewUserName 'cert-safeguard-ps-user' -FirstName 'safeguard' -LastName 'ps-user' -NoPassword -Provider -2 -Thumbprint '2349a0311c312f6dff57875fd2b2a112b8e2c644' > $null"
New-SafeguardUser -NewUserName "cert-safeguard-ps-user" -FirstName "safeguard" -LastName "ps-user" -NoPassword -Provider -2 -Thumbprint "2349a0311c312f6dff57875fd2b2a112b8e2c644" > $null
$certUserName = Get-SafeguardUser -UserToGet "cert-safeguard-ps-user"
#endregion

# Create-AssetAccount
Write-Host "Create Assets and Accounts"
foreach ($asset in $assetsToCreate) {
$newAsset = $null
if ([string]::IsNullOrEmpty($asset.ServiceAccountCredentialType)) {
$newAsset = New-SafeguardAsset -NetworkAddress $asset.NetworkAddress -Platform $asset.Platform -Description $asset.Description -DisplayName $asset.DisplayName -ServiceAccountCredentialType None -AcceptSshHostKey
}
Expand Down Expand Up @@ -310,10 +310,9 @@ try {
Write-Host "Create-AccessRequest"
#region AccessRequest
$selectedAccount = FindAssetAccount(0)
$selectedAsset = Get-SafeguardAsset -AssetToGet $selectedAccount.AssetId
$selectedAsset = Get-SafeguardAsset -AssetToGet $selectedAccount.Asset.Id
$selectedAccount = Get-SafeguardAssetAccount -AccountToGet $selectedAccount.Id
$convertedJson = ConvertFrom-Json $newAccessRequestBody.Replace("#ACCOUNT_ID#", $selectedAccount.Id).Replace("#ASSET_ID#", $selectedAsset.Id)
$newAccessRequest = Invoke-SafeguardMethod Core Post AccessRequests -Body $convertedJson
$newAccessRequest = New-SafeguardAccessRequest $selectedAsset.Id $selectedAccount.Id Ssh
Get-SafeguardAccessRequest -RequestId $newAccessRequest.Id > $null
Edit-SafeguardAccessRequest $newAccessRequest.Id InitializeSession > $null
Get-SafeguardAccessRequestPassword -RequestId $newAccessRequest.Id > $null
Expand Down
14 changes: 7 additions & 7 deletions cmdlet-tests-asset-partition.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -30,16 +30,16 @@ try {
$partitionOwnerUser = Find-SafeguardUser $DATA.partitionOwnerUserName
if (-not $partitionOwnerUser) {
$partitionOwnerUser = New-SafeguardUser -NewUserName $DATA.partitionOwnerUserName -FirstName "Safeguard-ps" -LastName "PartitionOwner" -NoPassword -Provider -1
infoResult "New-SafeguardUser" "$($partitionOwnerUser.UserName) user created for partition owner testing" $null
infoResult "New-SafeguardUser" "$($partitionOwnerUser.Name) user created for partition owner testing" $null
$deletePartitionOwner = $true
}
else {
infoResult "Find-SafeguardUser" "using existing $($partitionOwnerUser.UserName) user for partition owner testing" $null
infoResult "Find-SafeguardUser" "using existing $($partitionOwnerUser.Name) user for partition owner testing" $null
$deletePartitionOwner = $false
}

Add-SafeguardAssetPartitionOwner -AssetPartitionToEdit "$($newPartition.name)" -UserList $partitionOwnerUser.UserName > $null
goodResult "Add-SafeguardAssetPartitionOwner" "$($newPartition.name) owner set to $($partitionOwnerUser.UserName)"
Add-SafeguardAssetPartitionOwner -AssetPartitionToEdit "$($newPartition.name)" -UserList $partitionOwnerUser.Name > $null
goodResult "Add-SafeguardAssetPartitionOwner" "$($newPartition.name) owner set to $($partitionOwnerUser.Name)"
Get-SafeguardAssetPartitionOwner -AssetPartitionToGet "$($newPartition.name)" | format-table

Enter-SafeguardAssetPartition -AssetPartitionToEnter $newPartition.name > $null
Expand All @@ -48,13 +48,13 @@ try {
Exit-SafeguardAssetPartition > $null
goodResult "Exit-SafeguardAssetPartition" "exited $($newPartition.name)"
Get-SafeguardCurrentAssetPartition | format-table
Remove-SafeguardAssetPartitionOwner -AssetPartitionToEdit "$($newPartition.name)" -UserList $partitionOwnerUser.UserName > $null
goodResult "Remove-SafeguardAssetPartitionOwner" "$($newPartition.name) owner removed $($partitionOwnerUser.UserName)"
Remove-SafeguardAssetPartitionOwner -AssetPartitionToEdit "$($newPartition.name)" -UserList $partitionOwnerUser.Name > $null
goodResult "Remove-SafeguardAssetPartitionOwner" "$($newPartition.name) owner removed $($partitionOwnerUser.Name)"
Get-SafeguardAssetPartitionOwner -AssetPartitionToGet "$($newPartition.name)" | format-table

if ($deletePartitionOwner) {
Remove-SafeguardUser -UserToDelete $DATA.partitionOwnerUserName -ErrorAction:SilentlyContinue > $null
infoResult "Remove-SafeguardUser" "- removed $($partitionOwnerUser.UserName)"
infoResult "Remove-SafeguardUser" "- removed $($partitionOwnerUser.Name)"
}
Remove-SafeguardAssetPartition -AssetPartitionToDelete "$($newPartition.name)" > $null
goodResult "Remove-SafeguardAssetPartition" "$($newPartition.name) removed"
Expand Down
5 changes: 2 additions & 3 deletions cmdlet-tests-assets-and-accounts.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -73,9 +73,10 @@ try {
$asset = Invoke-SafeguardAssetSshHostKeyDiscovery -Asset $DATA.assetname -AcceptSshHostKey
goodResult "Invoke-SafeguardAssetSshHostKeyDiscovery" "Discovered and accepted ssh host key on $($DATA.assetName)"


try {
foreach ($acctname in $DATA.assetAccounts.GetEnumerator()) {
$found = Find-SafeguardAssetAccount -QueryFilter "AssetName eq '$($DATA.assetName)' and Name eq '$acctname'"
$found = Find-SafeguardAssetAccount -QueryFilter "Asset.Name eq '$($DATA.assetName)' and Name eq '$acctname'"
if ($found) { infoResult "New-SafeguardDirectoryAccount" "$acctname already exists on $($DATA.assetName)" }
else {
try {
Expand All @@ -100,11 +101,9 @@ try {
if (-not $assetAccount.Description -contains "Description for") {
badResult "Edit-SafeguardAssetAccount" "failed for $($DATA.assetName)\$($DATA.assetAccounts[0])"
}

$found = Find-SafeguardAssetAccount $DATA.assetAccounts[0]
if ($found) { goodResult "Find-SafeguardAssetAccount" "found $($DATA.assetAccounts[0])" }
else { badResult "Find-SafeguardAssetAccount" "DID NOT find $($DATA.assetAccounts[0])" }

Test-SafeguardAsset -AssetToTest $DATA.assetName
goodResult "Test-SafeguardAsset" "Successfully tested assed $($DATA.assetName) (pass or fail)"

Expand Down
30 changes: 0 additions & 30 deletions cmdlet-tests-certificates.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -32,36 +32,6 @@ $blockInfo = testBlockHeader $TestBlockName
#

try {
Get-SafeguardAccessCertificationAccount -Identifier $DATA.appliance -StdOut
goodResult "Get-SafeguardAccessCertificationAccount" "Successfully called"

# NOTE
# these require that ActiveDirectory modules be installed. See "Install Instructions" here
# https://www.microsoft.com/en-us/download/details.aspx?id=45520
#
# Install these
# RSAT: Server Manager
# RSAT: Active Directory Domain Services and Lightweight Directory Services Tools
try {
Get-SafeguardAccessCertificationAll -Identifier $DATA.appliance -OutputDirectory $DATA.outputPaths.certificates -DomainName $DATA.domainName -Credential $DATA.domainCredential
goodResult "Get-SafeguardAccessCertificationAll" "Successfully called. Check CSV files for output."

Get-ADAccessCertificationIdentity -StdOut -DomainName $DATA.domainName -Credential $DATA.domainCredential
goodResult "Get-ADAccessCertificationIdentity" "Successfully called"
} catch {
badResult "Access Certification" "Error accessing domain $($DATA.domainName) for Access Certification Info" $_
}

Get-SafeguardAccessCertificationGroup -Identifier $DATA.appliance -StdOut
goodResult "Get-SafeguardAccessCertificationGroup" "Successfully called"

Get-SafeguardAccessCertificationIdentity -Identifier $DATA.appliance -StdOut
goodResult "Get-SafeguardAccessCertificationIdentity" "Successfully called"

# This assumes some entitlement stuff being around for meaningful output?
Get-SafeguardAccessCertificationEntitlement -Identifier $DATA.appliance -StdOut
goodResult "Get-SafeguardAccessCertificationEntitlement" "Successfully called"

try {
$csr = New-SafeguardCsr -CertificateType Ssl -Subject $DATA.newCsrSubject `
-DnsNames $DATA.newCsrDns -IpAddresses $DATA.newCsrIpAddress `
Expand Down
13 changes: 3 additions & 10 deletions cmdlet-tests-directory.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -83,12 +83,8 @@ try {
}
}

# TODO
# This one keeps failing no matter what gets passed because something is looking for AssetPartitionId
# which is not part of the directory object. So, leaving it here with exception handler and
# letting it fail for the time being.
try {
$newDirectory = Edit-SafeguardDirectory -DirectoryToEdit $($DATA.domainName) -Description "New Description for $DATA.domainName"
$newDirectory = (Edit-SafeguardDirectory -DirectoryToEdit $($DATA.domainName) -Description "New Description for $($DATA.domainName)")
if ($newDirectory.Description -eq "New Description for $($DATA.domainName)") { goodResult "Edit-SafeguardDirectory" "Successfully edited" }
else { badResult "Edit-SafeguardDirectory" "Edit failed" }
} catch {
Expand All @@ -101,21 +97,18 @@ try {
$existingAccounts = Get-SafeguardDirectoryAccount -DirectoryToGet $DATA.domainName -Fields Name
goodResult "Get-SafeguardDirectoryAccount" "Found $($existingAccounts.Count) accounts"
foreach ($acctname in $DATA.directoryAccounts.GetEnumerator()) {
$found = Find-SafeguardAssetAccount -QueryFilter "AssetName eq '$($DATA.domainName)' and Name eq '$acctname'"
$found = Find-SafeguardAssetAccount -QueryFilter "Asset.Name eq '$($DATA.domainName)' and Name eq '$acctname'"
if ($found) { infoResult "New-SafeguardDirectoryAccount" "$acctname already exists on $($DATA.domainName)" }
else {
try {
$newacct = New-SafeguardDirectoryAccount -ParentDirectory $newDirectory -NewAccountName $acctname
$newacct = New-SafeguardDirectoryAccount -ParentDirectory $newDirectory -NewAccountName $acctname -DomainName $DATA.domainName
goodResult "New-SafeguardDirectoryAccount" "$acctName successfully created on $($DATA.domainName)"
} catch {
badResult "New-SafeguardDirectoryAccount" "Unexpected error creating $acctName on $($DATA.domainName)" $_
}
}
}

# TODO
# Can't get this one to work no matter what
# Keep it here and let it "fail" until i figure out wth is going on
$diracct = Find-SafeguardDirectoryAccount $DATA.directoryAccounts[0]
if ($diracct) { goodResult "Find-SafeguardDirectoryAccount" "Found directory account $($DATA.directoryAccounts[0])" }
else { badResult "Find-SafeguardDirectoryAccount" "Did not find directory account $($DATA.directoryAccounts[0])" }
Expand Down
4 changes: 2 additions & 2 deletions cmdlet-tests-entitlement.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ $blockInfo = testBlockHeader $TestBlockName
try {
$entUser = createUser $DATA.userUserName

$entitlement = New-SafeguardEntitlement -Name "$($DATA.entitlementName)" -MemberUsers "$($entUser.UserName)"
$entitlement = New-SafeguardEntitlement -Name "$($DATA.entitlementName)" -MemberUsers "$($entUser.Name)"
goodResult "New-SafeguardEntitlement" "Successfully created entitlement $($entitlement.Name)"

$entitlement = Get-SafeguardEntitlement -EntitlementToGet $DATA.entitlementName
Expand All @@ -39,7 +39,7 @@ try {
}
try {
foreach ($acctname in $DATA.assetAccounts.GetEnumerator()) {
$found = Find-SafeguardAssetAccount -QueryFilter "AssetName eq '$($DATA.assetName)' and Name eq '$acctname'"
$found = Find-SafeguardAssetAccount -QueryFilter "Asset.Name eq '$($DATA.assetName)' and Name eq '$acctname'"
if ($found) { infoResult "New-SafeguardDirectoryAccount" "$acctname already exists on $($DATA.assetName)" }
else {
try {
Expand Down
18 changes: 11 additions & 7 deletions cmdlet-tests-event-subscriptions.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -42,13 +42,17 @@ try {
} catch {
badResult "Get-SafeguardEventSubscription" "Did NOT retrieve subscription Id=$subscriptionId" $_
}

$findSubscription = Find-SafeguardEventSubscription -SearchString edited
if ($findSubscription) {
goodResult "Find-SafeguardEventSubscription" "Successfully found event Subscription Id=$($findSubscription.Id)'"
} else {
badResult "Find-SafeguardEventSubscription" "Did NOT find subscription Id=$subscriptionId"
}
try {
infoResult "Find-SafeguardEventSubscription -Verbose -SearchString edited"
$findSubscription = Find-SafeguardEventSubscription -Verbose -SearchString edited
if ($findSubscription) {
goodResult "Find-SafeguardEventSubscription" "Successfully found event Subscription Id=$($findSubscription.Id)'"
} else {
badResult "Find-SafeguardEventSubscription" "Did NOT find subscription Id=$subscriptionId"
}
} catch{
badResult "Find-SafeguardEventSubscription" "Did NOT find subscription Id=$subscriptionId" $_
}
Remove-SafeguardEventSubscription -SubscriptionId $subscriptionID > $null
goodResult "Remove-SafeguardEventSubscription" "Successfully removed event Subscription Id=$($subscription.Id)'"
} catch {
Expand Down
8 changes: 4 additions & 4 deletions cmdlet-tests-groups.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ try {
}

Add-SafeguardUserGroupMember -Group $userGroup.Name -UserList $DATA.userUsername > $null
$groupMembers = (Get-SafeguardUserGroupMember -Group $userGroup.Name).UserName
$groupMembers = (Get-SafeguardUserGroupMember -Group $userGroup.Name).Name
if ($DATA.userUsername -in $groupMembers) {
goodResult "Add-SafeguardUserGroupMember" "$($DATA.userUsername) successfully added to $($userGroup.Name)"
}
Expand All @@ -92,7 +92,7 @@ try {
}

Remove-SafeguardUserGroupMember -Group $userGroup.Name -UserList $DATA.userUsername > $null
$groupMembers = (Get-SafeguardUserGroupMember -Group $userGroup.Name).UserName
$groupMembers = (Get-SafeguardUserGroupMember -Group $userGroup.Name).Name
if ($null -eq $groupMembers -or -not $DATA.userUsername -in $groupMembers) {
goodResult "Remove-SafeguardUserGroupMember" "$($DATA.userUsername) successfully removed from $($userGroup.Name)"
}
Expand All @@ -101,7 +101,7 @@ try {
}

Edit-SafeguardUserGroup -GroupToEdit $userGroup.Name -UserList $DATA.userUsername -Operation add > $null
$groupMembers = (Get-SafeguardUserGroupMember -Group $userGroup.Name).UserName
$groupMembers = (Get-SafeguardUserGroupMember -Group $userGroup.Name).Name
if ($DATA.userUsername -in $groupMembers) {
goodResult "Edit-SafeguardUserGroup" "$($DATA.userUsername) successfully edited to add to $($userGroup.Name)"
}
Expand All @@ -112,7 +112,7 @@ try {
Remove-SafeguardUserGroup -GroupToDelete "$($DATA.userGroupName)" > $null
goodResult "Remove-SafeguardUserGroup" "Successfully removed $($DATA.userGroupName)"
} catch {
badResult "general" "Error adding $userUserName to group $($userGroup.Name)" $_
badResult "general" "Error adding $($DATA.userUserName) to group $($userGroup.Name)" $_
}
} catch {
badResult "Groups general" "Unexpected error in Groups tests" $_
Expand Down
11 changes: 3 additions & 8 deletions cmdlet-tests-miscellaneous.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -53,20 +53,15 @@ try {
try {
$x0 = Get-SafeguardNetworkInterface -Interface "x0"
infoResult "Get-SafeguardNetworkInterface" "Existing DNSServers for x0=$($x0.DnsServers -join ' ')"

$setX0 = Set-SafeguardNetworkInterface -Interface "x0" -DnsServers @("10.1.1.37","10.1.1.10")
goodResult "Set-SafeguardNetworkInterface" "Successfuly edited X0.DnsServers=$($setX0.DnsServers -join ' ')"

$setX0 = Set-SafeguardNetworkInterface -Interface "x0" -DnsServers $x0.DnsServers
infoResult "Set-SafeguardNetworkInterface" "Reset DNSServers for x0=$($x0.DnsServers -join ' ')"

$x0Dns = Get-SafeguardDnsSuffix -Interface x0
$x0Dns = Get-SafeguardDnsSuffix
infoResult "Get-SafeguardNetworkInterface" "Existing DnsSuffixes for x0=$($x0Dns.DomainNames -join ' ')"

$setX0Dns = Set-SafeguardDnsSuffix -Interface x0 -DnsSuffixes @("foo.com","bar.com")
$setX0Dns = Set-SafeguardDnsSuffix -DnsSuffixes @("foo.com","bar.com")
goodResult "Set-SafeguardDnsSuffix" "Successfuly edited X0 DnsSuffixes=$($setX0Dns.DomainNames -join ' ')"

$setX0Dns = Set-SafeguardDnsSuffix -Interface x0 -DnsSuffixes "$($x0Dns.DomainNames)"
$setX0Dns = Set-SafeguardDnsSuffix -DnsSuffixes "$($x0Dns.DomainNames)"
infoResult "Set-SafeguardDnsSuffix" "Successfuly reset X0 DnsSuffixes=$($setX0Dns.DomainNames -join ' ')"
} catch {
badResult "Network Interface general" "Unexpected error" $_
Expand Down
2 changes: 1 addition & 1 deletion cmdlet-tests-noparameter.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ $commands = @{
GetSafeguardClusterSummary = @{cmdName = "Get-SafeguardClusterSummary";};
GetSafeguardClusterVpnIpv6Address = @{cmdName = "Get-SafeguardClusterVpnIpv6Address";};
GetSafeguardCsr = @{cmdName = "Get-SafeguardCsr";};
GetSafeguardDnsSuffix = @{cmdName = "Get-SafeguardDnsSuffix"; cmd = "Get-SafeguardDnsSuffix x0";};
GetSafeguardDnsSuffix = @{cmdName = "Get-SafeguardDnsSuffix"; cmd = "Get-SafeguardDnsSuffix";};
GetSafeguardEventName = @{cmdName = "Get-SafeguardEventName"; cmd = "(Get-SafeguardEventName) | select -First $DEFAULT_MAXROWS"};
GetSafeguardHealth = @{cmdName = "Get-SafeguardHealth";};
GetSafeguardPlatform = @{cmdName = "Get-SafeguardPlatform"; cmd = "(Get-SafeguardPlatform).DisplayName | select -First $DEFAULT_MAXROWS";};
Expand Down
Loading