89 lines
2.3 KiB
PowerShell
89 lines
2.3 KiB
PowerShell
|
function New-AWSConfigFile {
|
||
|
<#
|
||
|
.SYNOPSIS
|
||
|
Used to setup a new AWS Config File
|
||
|
#>
|
||
|
[CmdletBinding()]
|
||
|
[OutputType([void])]
|
||
|
param (
|
||
|
[Parameter(Mandatory = $true)]
|
||
|
$FilePath,
|
||
|
[Parameter(Mandatory = $true)]
|
||
|
$virtualMFADeviceSerialNumber,
|
||
|
[Parameter(Mandatory = $true)]
|
||
|
$RoleName
|
||
|
)
|
||
|
|
||
|
$logLead = (Get-LogLeadName)
|
||
|
|
||
|
if (Test-Path $FilePath) {
|
||
|
throw "$logLead : Can not replace existing AWS Config file at [$FilePath]. Please remove the file and try again."
|
||
|
}
|
||
|
|
||
|
$fileContents = @"
|
||
|
#Place this file in your .aws folder, overwriting the existing file.
|
||
|
#Set up your credentials file to use your master payer keys as the default profile
|
||
|
#Fill in the brackets below with the required information.
|
||
|
|
||
|
[default]
|
||
|
#transit account with access to only manage MFA and assumerole to assigned role(s) which will now prompt for MFA
|
||
|
region = us-east-1
|
||
|
output = json
|
||
|
|
||
|
[profile Prod]
|
||
|
region = us-east-1
|
||
|
source_profile = default
|
||
|
role_arn = arn:aws:iam::790953160341:role/$RoleName
|
||
|
mfa_serial = $virtualMFADeviceSerialNumber
|
||
|
|
||
|
[profile Transit]
|
||
|
region = us-east-1
|
||
|
source_profile = default
|
||
|
role_arn = arn:aws:iam::844547943473:role/$RoleName
|
||
|
mfa_serial = $virtualMFADeviceSerialNumber
|
||
|
|
||
|
[profile Transitnp]
|
||
|
region = us-east-1
|
||
|
source_profile = default
|
||
|
role_arn = arn:aws:iam::727029306845:role/$RoleName
|
||
|
mfa_serial = $virtualMFADeviceSerialNumber
|
||
|
|
||
|
[profile Qa]
|
||
|
region = us-east-1
|
||
|
source_profile = default
|
||
|
role_arn = arn:aws:iam::668894625708:role/$RoleName
|
||
|
mfa_serial = $virtualMFADeviceSerialNumber
|
||
|
|
||
|
[profile Sandbox]
|
||
|
region = us-east-1
|
||
|
source_profile = default
|
||
|
role_arn = arn:aws:iam::490361062173:role/$RoleName
|
||
|
mfa_serial = $virtualMFADeviceSerialNumber
|
||
|
|
||
|
[profile Security]
|
||
|
region = us-east-1
|
||
|
source_profile = default
|
||
|
role_arn = arn:aws:iam::228368111183:role/$RoleName
|
||
|
mfa_serial = $virtualMFADeviceSerialNumber
|
||
|
|
||
|
[profile Dev]
|
||
|
region = us-east-1
|
||
|
source_profile = default
|
||
|
role_arn = arn:aws:iam::327695573722:role/$RoleName
|
||
|
mfa_serial = $virtualMFADeviceSerialNumber
|
||
|
|
||
|
[profile Corp]
|
||
|
region = us-east-1
|
||
|
source_profile = default
|
||
|
role_arn = arn:aws:iam::994898437262:role/$RoleName
|
||
|
mfa_serial = $virtualMFADeviceSerialNumber
|
||
|
|
||
|
[profile Mp]
|
||
|
region = us-east-1
|
||
|
source_profile = default
|
||
|
role_arn = arn:aws:iam::185809956479:role/$RoleName
|
||
|
mfa_serial = $virtualMFADeviceSerialNumber
|
||
|
"@
|
||
|
|
||
|
Set-Content -Path $FilePath -Value $fileContents -Force
|
||
|
}
|