CreateVirtualMfaDevice 사용하기
CreateVirtualMfaDevice 사용하기 (CLI)
CreateVirtualMfaDevice(가상 MFA 디바이스 생성) API를 활용하는 방법을 코드 예시로 정리했어요. 각 예시는 어떤 동작을 하는지, 어떤 파라미터를 쓰는지 순서대로 살펴볼 수 있어요.
출처: 문서
본문
다음 코드 예시들은 CreateVirtualMfaDevice 를 어떻게 사용하는지 보여줘요.
AWS CLI
가상 MFA 디바이스 생성하기
aws iam create-virtual-mfa-device \
--virtual-mfa-device-name BobsMFADevice \
--outfile C:/QRCode.png \
--bootstrap-method QRCodePNG
이 예시는 BobsMFADevice라는 새 가상 MFA 디바이스를 만들어요. 부트스트랩 정보가 담긴 QRCode.png 파일을 만들어 C:/ 디렉터리에 저장해요. 이 예시에서 사용한 부트스트랩 방법은 QRCodePNG예요.
{
"VirtualMFADevice": {
"SerialNumber": "arn:aws:iam::210987654321:mfa/BobsMFADevice"
}
출력:
PowerShell Tools (V4)
예시 1: 새 가상 MFA 디바이스를 만들어요. 2번째와 3번째 줄은 가상 MFA 소프트웨어 프로그램이 계정을 만드는 데 필요한 Base32StringSeed 값을 추출해요(QR 코드 대신 사용). 그 값으로 프로그램을 설정한 뒤 프로그램에서 연속된 인증 코드 2개를 받아요. 마지막으로 마지막 명령을 사용해 가상 MFA 디바이스를 IAM 사용자 Bob과 연결하고, 두 인증 코드로 계정을 동기화해요.
$Device = New-IAMVirtualMFADevice -VirtualMFADeviceName BobsMFADevice
$SR = New-Object System.IO.StreamReader($Device.Base32StringSeed)
$base32stringseed = $SR.ReadToEnd()
$base32stringseed
CZWZMCQNW4DEXAMPLE3VOUGXJFZYSUW7EXAMPLECR4NJFD65GX2SLUDW2EXAMPLE
출력:
-- Pause here to enter base-32 string seed code into virtual MFA program to register account. --
Enable-IAMMFADevice -SerialNumber $Device.SerialNumber -UserName Bob -AuthenticationCode1 123456 -AuthenticationCode2 789012
예시 2: 새 가상 MFA 디바이스를 만들어요. 2번째와 3번째 줄은 QRCodePNG 값을 추출해 파일로 써요. 이 이미지를 가상 MFA 소프트웨어 프로그램으로 스캔해 계정을 만들면 돼요(Base32StringSeed 값 수동 입력 대신 사용). 가상 MFA 프로그램에서 계정을 만든 뒤 연속된 인증 코드 2개를 받아 마지막 명령에 입력하면 가상 MFA 디바이스를 IAM 사용자 Bob과 연결하고 계정을 동기화할 수 있어요.
$Device = New-IAMVirtualMFADevice -VirtualMFADeviceName BobsMFADevice
$BR = New-Object System.IO.BinaryReader($Device.QRCodePNG)
$BR.ReadBytes($BR.BaseStream.Length) | Set-Content -Encoding Byte -Path QRCode.png
출력:
-- Pause here to scan PNG with virtual MFA program to register account. --
Enable-IAMMFADevice -SerialNumber $Device.SerialNumber -UserName Bob -AuthenticationCode1 123456 -AuthenticationCode2 789012
PowerShell Tools (V5)
예시 1: 새 가상 MFA 디바이스를 만들어요. 2번째와 3번째 줄은 가상 MFA 소프트웨어 프로그램이 계정을 만드는 데 필요한 Base32StringSeed 값을 추출해요(QR 코드 대신 사용). 그 값으로 프로그램을 설정한 뒤 프로그램에서 연속된 인증 코드 2개를 받아요. 마지막으로 마지막 명령을 사용해 가상 MFA 디바이스를 IAM 사용자 Bob과 연결하고, 두 인증 코드로 계정을 동기화해요.
$Device = New-IAMVirtualMFADevice -VirtualMFADeviceName BobsMFADevice
$SR = New-Object System.IO.StreamReader($Device.Base32StringSeed)
$base32stringseed = $SR.ReadToEnd()
$base32stringseed
CZWZMCQNW4DEXAMPLE3VOUGXJFZYSUW7EXAMPLECR4NJFD65GX2SLUDW2EXAMPLE
출력:
-- Pause here to enter base-32 string seed code into virtual MFA program to register account. --
Enable-IAMMFADevice -SerialNumber $Device.SerialNumber -UserName Bob -AuthenticationCode1 123456 -AuthenticationCode2 789012
예시 2: 새 가상 MFA 디바이스를 만들어요. 2번째와 3번째 줄은 QRCodePNG 값을 추출해 파일로 써요. 이 이미지를 가상 MFA 소프트웨어 프로그램으로 스캔해 계정을 만들면 돼요(Base32StringSeed 값 수동 입력 대신 사용). 가상 MFA 프로그램에서 계정을 만든 뒤 연속된 인증 코드 2개를 받아 마지막 명령에 입력하면 가상 MFA 디바이스를 IAM 사용자 Bob과 연결하고 계정을 동기화할 수 있어요.
$Device = New-IAMVirtualMFADevice -VirtualMFADeviceName BobsMFADevice
$BR = New-Object System.IO.BinaryReader($Device.QRCodePNG)
$BR.ReadBytes($BR.BaseStream.Length) | Set-Content -Encoding Byte -Path QRCode.png
출력:
-- Pause here to scan PNG with virtual MFA program to register account. --
Enable-IAMMFADevice -SerialNumber $Device.SerialNumber -UserName Bob -AuthenticationCode1 123456 -AuthenticationCode2 789012