GetCredentialReport 사용하기

GetCredentialReport 사용하기 (SDK/CLI)

GetCredentialReport(자격 증명 보고서 가져오기) API를 활용하는 방법을 코드 예시로 정리했어요. 각 예시는 어떤 동작을 하는지, 어떤 파라미터를 쓰는지 순서대로 살펴볼 수 있어요.

출처: 문서

본문

다음 코드 예시들은 GetCredentialReport 를 어떻게 사용하는지 보여줘요.

AWS CLI

자격 증명 보고서 가져오기

aws iam get-credential-report

이 예시는 반환된 보고서를 열어 텍스트 줄 배열로 파이프라인에 출력해요.

{
    "GeneratedTime":  "2015-06-17T19:11:50Z",
    "ReportFormat": "text/csv"
}

출력:

PowerShell Tools (V4)

예시 1: 반환된 보고서를 열어 텍스트 줄 배열로 파이프라인에 출력해요. 첫 번째 줄은 쉼표로 구분된 열 이름이 있는 헤더이고, 이후 각 행은 한 사용자의 세부 행으로 각 필드가 쉼표로 구분돼 있어요. 보고서를 보려면 먼저 Request-IAMCredentialReport cmdlet으로 생성해야 해요. 보고서를 단일 문자열로 가져오려면 -AsTextArray 대신 -Raw를 사용하세요. -AsTextArray 스위치의 별칭인 -SplitLines도 허용돼요. 출력의 전체 열 목록은 서비스 API 참조에서 확인하세요. -AsTextArray나 -SplitLines를 사용하지 않으면 .NET StreamReader 클래스로 .Content 속성에서 텍스트를 추출해야 해요.

Request-IAMCredentialReport

출력:

Description                                                         State
-----------                                                         -----
No report exists. Starting a new report generation task             STARTED
Get-IAMCredentialReport -AsTextArray

출력:

      user,arn,user_creation_time,password_enabled,password_last_used,password_last_changed,password_next_rotation,mfa_active,access_key_1_active,access_key_1_last_rotated,access_key_2_active,access_key_2_last_rotated,cert_1_active,cert_1_last_rotated,cert_2_active,cert_2_last_rotated root_account,arn:aws:iam::123456789012:root,2014-10-15T16:31:25+00:00,not_supported,2015-04-20T17:41:10+00:00,not_supported,not_supported,true,false,N/A,false,N/A,false,N/A,false,N/A
Administrator,arn:aws:iam::123456789012:user/Administrator,2014-10-16T16:03:09+00:00,true,2015-04-20T15:18:32+00:00,2014-10-16T16:06:00+00:00,N/A,false,true,2014-12-03T18:53:41+00:00,true,2015-03-25T20:38:14+00:00,false,N/A,false,N/A
Bill,arn:aws:iam::123456789012:user/Bill,2015-04-15T18:27:44+00:00,false,N/A,N/A,N/A,false,false,N/A,false,N/A,false,2015-04-20T20:00:12+00:00,false,N/A

PowerShell Tools (V5)

예시 1: 반환된 보고서를 열어 텍스트 줄 배열로 파이프라인에 출력해요. 첫 번째 줄은 쉼표로 구분된 열 이름이 있는 헤더이고, 이후 각 행은 한 사용자의 세부 행으로 각 필드가 쉼표로 구분돼 있어요. 보고서를 보려면 먼저 Request-IAMCredentialReport cmdlet으로 생성해야 해요. 보고서를 단일 문자열로 가져오려면 -AsTextArray 대신 -Raw를 사용하세요. -AsTextArray 스위치의 별칭인 -SplitLines도 허용돼요. 출력의 전체 열 목록은 서비스 API 참조에서 확인하세요. -AsTextArray나 -SplitLines를 사용하지 않으면 .NET StreamReader 클래스로 .Content 속성에서 텍스트를 추출해야 해요.

Request-IAMCredentialReport

출력:

Description                                                         State
-----------                                                         -----
No report exists. Starting a new report generation task             STARTED
Get-IAMCredentialReport -AsTextArray

출력:

      user,arn,user_creation_time,password_enabled,password_last_used,password_last_changed,password_next_rotation,mfa_active,access_key_1_active,access_key_1_last_rotated,access_key_2_active,access_key_2_last_rotated,cert_1_active,cert_1_last_rotated,cert_2_active,cert_2_last_rotated root_account,arn:aws:iam::123456789012:root,2014-10-15T16:31:25+00:00,not_supported,2015-04-20T17:41:10+00:00,not_supported,not_supported,true,false,N/A,false,N/A,false,N/A,false,N/A
Administrator,arn:aws:iam::123456789012:user/Administrator,2014-10-16T16:03:09+00:00,true,2015-04-20T15:18:32+00:00,2014-10-16T16:06:00+00:00,N/A,false,true,2014-12-03T18:53:41+00:00,true,2015-03-25T20:38:14+00:00,false,N/A,false,N/A
Bill,arn:aws:iam::123456789012:user/Bill,2015-04-15T18:27:44+00:00,false,N/A,N/A,N/A,false,false,N/A,false,N/A,false,2015-04-20T20:00:12+00:00,false,N/A

Python(Boto3)

def get_credential_report():
    """
    Gets the most recently generated credentials report about the current account.

    :return: The credentials report.
    """
    try:
        response = iam.meta.client.get_credential_report()
        logger.debug(response["Content"])
    except ClientError:
        logger.exception("Couldn't get credentials report.")
        raise
    else:
        return response["Content"]

GitHub에 더 많은 내용이 있어요. AWS Code Examples Repository에서 전체 예시를 찾아 실행 방법을 배울 수 있어요.

SAP ABAP

    TRY.
        oo_result = lo_iam->getcredentialreport( ).
        MESSAGE 'Retrieved credential report.' TYPE 'I'.
      CATCH /aws1/cx_iamcredrptnotpresen00.
        MESSAGE 'Credential report not present.' TYPE 'E'.
      CATCH /aws1/cx_iamcredrptexpiredex.
        MESSAGE 'Credential report expired.' TYPE 'E'.
      CATCH /aws1/cx_iamcredrptnotreadyex.
        MESSAGE 'Credential report not ready.' TYPE 'E'.
      CATCH /aws1/cx_iamservicefailureex.
        MESSAGE 'Service failure when getting credential report.' TYPE 'E'.
    ENDTRY.

GitHub에 더 많은 내용이 있어요. AWS Code Examples Repository에서 전체 예시를 찾아 실행 방법을 배울 수 있어요.

더 알아보기 (Learn more)