IAM 계정 별칭 관리 - AWS 루비용 SDK

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

IAM 계정 별칭 관리

AWS 계정 ID 대신 회사 이름이나 기타 친숙한 식별자를 로그인 페이지의 URL에 포함하려는 경우 AWS 계정 ID의 IAM 계정 별칭을 만들 수 있습니다. IAM 계정 별칭을 생성할 경우 별칭을 적용하기 위해 로그인 페이지 URL이 변경됩니다. IAM 계정 별칭에 대한 자세한 내용은 AWS 계정 ID 및 별칭을 참조하세요.

이 예제에서는 IAM과 함께 AWS SDK for Ruby를 사용하여 다음을 수행합니다.

  1. Aws::IAM::Client#list_account_aliases를 사용하여 AWS 계정 별칭을 나열합니다.

  2. Aws::IAM::Client#create_account_alias를 사용하여 계정 별칭을 만듭니다.

  3. Aws::IAM::Client#delete_account_alias를 사용하여 계정 별칭을 삭제합니다.

필수 조건

예제 코드를 실행하기 전에 다음에 설명되어 있는 대로 AWS SDK for Ruby를 설치하고 구성해야 합니다.

이 예제 코드에서는 my-account-alias 문자열을 모든 Amazon Web Services 제품에서 고유하게 변경하십시오.

예제

# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. # SPDX - License - Identifier: Apache - 2.0 # The following code example shows how to: # 1. List available AWS account aliases. # 2. Create an account alias. # 3. Delete an account alias. require 'aws-sdk-iam' # Lists available AWS account aliases. # # @param iam [Aws::IAM::Client] An initialized IAM client. # @example # puts list_aliases(Aws::IAM::Client.new) def list_aliases(iam) response = iam.list_account_aliases if response.account_aliases.count.positive? response.account_aliases.each do |account_alias| puts " #{account_alias}" end else puts 'No account aliases found.' end rescue StandardError => e puts "Error listing account aliases: #{e.message}" end # Creates an AWS account alias. # # @param iam [Aws::IAM::Client] An initialized IAM client. # @param account_alias [String] The name of the account alias to create. # @return [Boolean] true if the account alias was created; otherwise, false. # @example # exit 1 unless alias_created?(Aws::IAM::Client.new, 'my-account-alias') def alias_created?(iam, account_alias) iam.create_account_alias(account_alias: account_alias) return true rescue StandardError => e puts "Error creating account alias: #{e.message}" return false end # Deletes an AWS account alias. # # @param iam [Aws::IAM::Client] An initialized IAM client. # @param account_alias [String] The name of the account alias to delete. # @return [Boolean] true if the account alias was deleted; otherwise, false. # @example # exit 1 unless alias_deleted?(Aws::IAM::Client.new, 'my-account-alias') def alias_deleted?(iam, account_alias) iam.delete_account_alias(account_alias: account_alias) return true rescue StandardError => e puts "Error deleting account alias: #{e.message}" return false end # Full example call: def run_me iam = Aws::IAM::Client.new account_alias = 'my-account-alias' create_alias = true # Change to false to not generate an account alias. delete_alias = true # Change to false to not delete any generated account alias. puts 'Account aliases are:' list_aliases(iam) if create_alias puts 'Attempting to create account alias...' if alias_created?(iam, account_alias) puts 'Account alias created. Account aliases now are:' list_aliases(iam) else puts 'Account alias not created. Stopping program.' exit 1 end end if create_alias && delete_alias puts 'Attempting to delete account alias...' if alias_deleted?(iam, account_alias) puts 'Account alias deleted. Account aliases now are:' list_aliases(iam) else puts 'Account alias not deleted. You will need to delete ' \ 'the alias yourself.' end end end run_me if $PROGRAM_NAME == __FILE__