DetachUserPolicy 사용하기
DetachUserPolicy 사용하기 (SDK/CLI)
DetachUserPolicy(사용자에서 정책 분리) API를 활용하는 방법을 코드 예시로 정리했어요. 각 예시는 어떤 동작을 하는지, 어떤 파라미터를 쓰는지 순서대로 살펴볼 수 있어요.
출처: 문서
본문
다음 코드 예시들은 DetachUserPolicy 를 어떻게 사용하는지 보여줘요.
AWS CLI
사용자에서 정책 분리하기
aws iam detach-user-policy \
--user-name Bob \
--policy-arn arn:aws:iam::123456789012:policy/TesterPolicy
이 예시는 ARN이 arn:aws:iam::123456789012:policy/TesterPolicy인 관리형 정책을 Bob 사용자에게서 제거해요.
PowerShell Tools (V4)
예시 1: ARN이 arn:aws:iam::123456789012:policy/TesterPolicy인 관리형 정책을 Bob이라는 IAM 사용자에게서 분리해요.
Unregister-IAMUserPolicy -UserName Bob -PolicyArn arn:aws:iam::123456789012:policy/TesterPolicy
예시 2: Theresa라는 IAM 사용자에 연결된 모든 관리형 정책을 찾아 사용자에게서 분리해요.
Get-IAMAttachedUserPolicyList -UserName Theresa | Unregister-IAMUserPolicy -Username Theresa
PowerShell Tools (V5)
예시 1: ARN이 arn:aws:iam::123456789012:policy/TesterPolicy인 관리형 정책을 Bob이라는 IAM 사용자에게서 분리해요.
Unregister-IAMUserPolicy -UserName Bob -PolicyArn arn:aws:iam::123456789012:policy/TesterPolicy
예시 2: Theresa라는 IAM 사용자에 연결된 모든 관리형 정책을 찾아 사용자에게서 분리해요.
Get-IAMAttachedUserPolicyList -UserName Theresa | Unregister-IAMUserPolicy -Username Theresa
Python(Boto3)
def detach_policy(user_name, policy_arn):
"""
Detaches a policy from a user.
:param user_name: The name of the user.
:param policy_arn: The Amazon Resource Name (ARN) of the policy.
"""
try:
iam.User(user_name).detach_policy(PolicyArn=policy_arn)
logger.info("Detached policy %s from user %s.", policy_arn, user_name)
except ClientError:
logger.exception(
"Couldn't detach policy %s from user %s.", policy_arn, user_name
)
raise
GitHub에 더 많은 내용이 있어요. AWS Code Examples Repository에서 전체 예시를 찾아 실행 방법을 배울 수 있어요.
Ruby
# Detaches a policy from a user
#
# @param user_name [String] The name of the user
# @param policy_arn [String] The ARN of the policy to detach
# @return [Boolean] true if the policy was successfully detached, false otherwise
def detach_user_policy(user_name, policy_arn)
@iam_client.detach_user_policy(
user_name: user_name,
policy_arn: policy_arn
)
@logger.info("Policy '#{policy_arn}' detached from user '#{user_name}' successfully.")
true
rescue Aws::IAM::Errors::NoSuchEntity
@logger.error('Error detaching policy: Policy or user does not exist.')
false
rescue Aws::IAM::Errors::ServiceError => e
@logger.error("Error detaching policy from user '#{user_name}': #{e.message}")
false
end
GitHub에 더 많은 내용이 있어요. AWS Code Examples Repository에서 전체 예시를 찾아 실행 방법을 배울 수 있어요.
Rust
pub async fn detach_user_policy(
client: &iamClient,
user_name: &str,
policy_arn: &str,
) -> Result<(), iamError> {
client
.detach_user_policy()
.user_name(user_name)
.policy_arn(policy_arn)
.send()
.await?;
Ok(())
}
GitHub에 더 많은 내용이 있어요. AWS Code Examples Repository에서 전체 예시를 찾아 실행 방법을 배울 수 있어요.
SAP ABAP
TRY.
lo_iam->detachuserpolicy(
iv_username = iv_user_name
iv_policyarn = iv_policy_arn ).
MESSAGE 'Policy detached from user successfully.' TYPE 'I'.
CATCH /aws1/cx_iamnosuchentityex.
MESSAGE 'User or policy does not exist.' TYPE 'E'.
ENDTRY.
GitHub에 더 많은 내용이 있어요. AWS Code Examples Repository에서 전체 예시를 찾아 실행 방법을 배울 수 있어요.