Added GetInfoFromUniqueId.ps1
This commit is contained in:
commit
7148c51f6e
1 changed files with 58 additions and 0 deletions
58
GetInfoFromUniqueId.ps1
Normal file
58
GetInfoFromUniqueId.ps1
Normal file
|
@ -0,0 +1,58 @@
|
||||||
|
# Used for finding the relevant ARN or name for a policy when given the unique ID
|
||||||
|
# Use:
|
||||||
|
# .\GetInfoFromUniqueId.ps1 -target ANPAXXXXXXXXXXXXXXXXX -name # Returns name of resource
|
||||||
|
# .\GetInfoFromUniqueId.ps1 -target ANPAXXXXXXXXXXXXXXXXX -arn # Returns arn of resource
|
||||||
|
# .\GetInfoFromUniqueId.ps1 -target ANPAXXXXXXXXXXXXXXXXX -arn -name # Returns both arn and name of resource
|
||||||
|
# .\GetInfoFromUniqueId.ps1 -target ANPAXXXXXXXXXXXXXXXXX -arn -name -id # Returns arn, name and unique id of resource
|
||||||
|
|
||||||
|
Param (
|
||||||
|
[string]$target,
|
||||||
|
[switch]$arn,
|
||||||
|
[switch]$name,
|
||||||
|
[switch]$id
|
||||||
|
)
|
||||||
|
|
||||||
|
$uniqueIdType = "$($target.Substring(0,4))"
|
||||||
|
|
||||||
|
switch($uniqueIdType){
|
||||||
|
# "ABIA" { $command="" }
|
||||||
|
# "ACCA" { $command="" }
|
||||||
|
"AGPA" { $command="list-groups" }
|
||||||
|
"AIDA" { $command="list-users" }
|
||||||
|
# "AIPA" { $command="" }
|
||||||
|
"AKIA" { $command="" }
|
||||||
|
"ANPA" { $command="list-policies" }
|
||||||
|
# "ANVA" { $command="" }
|
||||||
|
# "APKA" { $command="" }
|
||||||
|
"AROA" { $command="list-roles" }
|
||||||
|
"ASCA" { $command="list-server-certificates" }
|
||||||
|
# "ASIA" { $command="" }
|
||||||
|
}
|
||||||
|
|
||||||
|
$env:Path = [System.Environment]::GetEnvironmentVariable("Path","Machine")
|
||||||
|
$awsCommand = "aws iam $command"
|
||||||
|
$retunedObjects = Invoke-Expression $awsCommand | ConvertFrom-Json
|
||||||
|
|
||||||
|
if ($returnedObjects -eq $null) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
$objectFound=$false
|
||||||
|
|
||||||
|
foreach($object in $retunedObjects.Policies) {
|
||||||
|
if ($objectFound -eq $true) {
|
||||||
|
break
|
||||||
|
}
|
||||||
|
elseif ("$target" -eq "$($object.PolicyId)") {
|
||||||
|
if ($name -eq $true) {
|
||||||
|
Write-Output "$($object.PolicyName)"
|
||||||
|
}
|
||||||
|
if ($arn -eq $true) {
|
||||||
|
Write-Output "$($object.Arn)"
|
||||||
|
}
|
||||||
|
if ($id -eq $true) {
|
||||||
|
Write-Output "$($object.PolicyId)"
|
||||||
|
}
|
||||||
|
$objectFound=$true
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in a new issue