http://jawsug-cli.doorkeeper.jp/events/13796 でのハンズオン資料です。
このハンズオンでは、AWSの管理者として、 [JAWS-UG CLI] IAM:#2 IAMグループとIAMユーザの作成 (管理者) http://qiita.com/tcsh/items/ce2e83430905587806a7 で作成したリソースの削除方法を学びます。
- IAMユーザのIAMグループからの削除
- IAMユーザのパスワード設定削除
- IAMユーザの削除
- グループポリシーの削除
- IAMグループの削除
前提条件
- IAMへのフルアクセス権限
- ユーザのグループからの削除
==========================
削除する対象ユーザを決めます。
$ IAM_USER_NAME='taro'
削除対象ユーザが所属するグループの一覧を表示してみましょう。
$ aws iam list-groups-for-user --user-name ${IAM_USER_NAME}
{
"Groups": [
{
"Path": "/",
"CreateDate": "2014-09-07T08:52:09Z",
"GroupId": "AGPAI5KIHK7xxxxxxxxxx",
"Arn": "arn:aws:iam::XXXXXXXXXXXX:group/operators",
"GroupName": "operators"
}
]
}
taroユーザを、所属するoperatorsグループから離脱させます。
$ IAM_GROUP_NAME='operators'
$ aws iam remove-user-from-group --group-name ${IAM_GROUP_NAME} --user-name ${IAM_USER_NAME}
(戻り値なし)
taroが所属するグループがなくなったことを確認します。
$ aws iam list-groups-for-user --user-name ${IAM_USER_NAME}
{
"Groups": []
}
- IAMユーザのパスワード設定削除
==============================
IAMユーザのパスワード設定を削除してみましょう。
削除対象IAMユーザのパスワード設定を確認します。
$ aws iam get-login-profile --user-name ${IAM_USER_NAME}
{
"LoginProfile": {
"UserName": "taro",
"CreateDate": "2014-09-07T12:01:53Z",
"PasswordResetRequired": false
}
}
削除対象IAMユーザのパスワード設定を削除します。
$ aws iam delete-login-profile --user-name ${IAM_USER_NAME}
(戻り値なし)
$ aws iam get-login-profile --user-name ${IAM_USER_NAME}
削除されたことを確認します。
A client error (NoSuchEntity) occurred when calling the GetLoginProfile operation: Cannot find Login Profile for User taro
- ユーザ削除
==============
[注] アクセスキーを全て削除していないと、ユーザは削除できないようです。
ユーザ一覧を表示します。
$ aws iam list-users
{
"Users": [
{
"UserName": "taro",
"Path": "/",
"CreateDate": "2014-09-07T11:01:01Z",
"UserId": "AIDAJMUDSVOxxxxxxxxxx",
"Arn": "arn:aws:iam::XXXXXXXXXXXX:user/taro"
}
]
}
taroユーザを削除します。
$ aws iam delete-user --user-name ${IAM_USER_NAME}
(戻り値なし)
- グループポリシ削除
======================
operatorsグループに設定されているグループポリシーを表示します。
$ aws iam list-group-policies --group-name ${IAM_GROUP_NAME}
{
"PolicyNames": [
"s3-full"
]
}
グループポリシーを削除してみます。
$ IAM_GP_NAME='s3-full'
$ aws iam delete-group-policy --group-name ${IAM_GROUP_NAME} --policy-name ${IAM_GP_NAME}
(戻り値なし)
operatorsグループにグループポリシーが設定されていない(削除された)ことを確認します。
$ aws iam list-group-policies --group-name ${IAM_GROUP_NAME}
{
"PolicyNames": []
}
- グループ削除
================
IAMグループの一覧を表示してみます。
$ aws iam list-groups
{
"Groups": [
{
"Path": "/",
"CreateDate": "2014-09-07T08:52:09Z",
"GroupId": "AGPAI5KIHK7xxxxxxxxxx",
"Arn": "arn:aws:iam::XXXXXXXXXXXX:group/operators",
"GroupName": "operators"
},
{
"Path": "/",
"CreateDate": "2014-09-07T03:37:40Z",
"GroupId": "AGPAJYZGCT6xxxxxxxxxx",
"Arn": "arn:aws:iam::XXXXXXXXXXXX:group/admin",
"GroupName": "admin"
}
]
}
IAMグループを削除します。
$ aws iam delete-group --group-name ${IAM_GROUP_NAME}
(戻り値なし)
以上で、作成したリソースは一通り削除されました。