TestIdentityProvider - AWS Transfer Family

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

TestIdentityProvider

파일 전송 프로토콜 지원 서버의 IdentityProviderTypeAWS_DIRECTORY_SERVICE 또는 API_Gateway인 경우 ID 제공자가 성공적으로 설정되었는지 테스트합니다. 서버를 생성하는 즉시 이 작업을 호출하여 인증 방법을 테스트하는 것이 좋습니다. 이렇게 하면 ID 제공자 통합 문제를 해결하여 사용자가 서비스를 성공적으로 사용할 수 있도록 할 수 있습니다.

ServerIdUserName 파라미터가 필요합니다. ServerProtocol, SourceIp, 및 UserPassword은 모두 옵션입니다.

유념할 사항:

  • 서버의 IdentityProviderTypeSERVICE_MANAGED인 경우에는 TestIdentityProvider를 사용할 수 없습니다.

  • TestIdentityProvider는 키와 함께 사용할 수 없습니다. 암호만 받아들입니다.

  • TestIdentityProvider는 키와 암호를 처리하는 맞춤 ID 공급자의 암호 작업을 테스트할 수 있습니다.

  • 파라미터에 잘못된 값을 입력하면 Response 필드가 비어 있습니다.

  • 서비스 관리 사용자를 사용하는 서버의 서버 ID를 제공하면 오류가 발생합니다.

    An error occurred (InvalidRequestException) when calling the TestIdentityProvider operation: s-server-ID not configured for external auth

  • 실제 전송 서버를 식별하지 않는 --server-id 파라미터에 서버 ID를 입력하면 다음과 같은 오류 메시지가 나타납니다.

    An error occurred (ResourceNotFoundException) when calling the TestIdentityProvider operation: Unknown server.

    서버가 다른 지역에 있을 수 있습니다. 미국 동부(오하이오)에 있는 서버를 지정하는 것과 같이 --region region-code(예: --region us-east-2)를 추가하여 지역을 지정할 수 있습니다.

구문 요청

{ "ServerId": "string", "ServerProtocol": "string", "SourceIp": "string", "UserName": "string", "UserPassword": "string" }

요청 파라미터

모든 작업에 공통되는 파라미터에 대한 내용은 공통 파라미터를 참조하십시오.

요청은 JSON 형식의 다음 데이터를 수락합니다.

ServerId

서버에 대해 시스템에서 할당한 식별자입니다. 사용자 이름과 암호를 사용해 서버의 사용자 인증 방법을 테스트합니다.

타입: 문자열

길이 제약 조건: 고정 길이는 19입니다.

Pattern: s-([0-9a-f]{17})

필수 여부: 예

ServerProtocol

테스트할 파일 전송 프로토콜의 타입입니다.

사용 가능한 프로토콜은 다음과 같습니다:

  • 보안 쉘(SSH) 파일 전송 프로토콜(SFTP)

  • 파일 전송 프로토콜 보안(FTPS)

  • 파일 전송 프로토콜(FTP)

  • 적용 가능성 설명 2(AS2)

타입: 문자열

유효 값: SFTP | FTP | FTPS | AS2

필수 여부: 아니요

SourceIp

테스트할 계정의 소스 IP 주소입니다.

타입: 문자열

길이 제약 조건: 최소 길이는 0입니다. 최대 길이 32.

패턴: \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}

필수 여부: 아니요

UserName

테스트할 계정의 명칭입니다.

타입: 문자열

길이 제약 조건: 최소 길이는 3입니다. 최대 길이는 100입니다.

Pattern: [\w][\w@.-]{2,99}

필수 여부: 예

UserPassword

테스트할 계정의 암호입니다.

타입: 문자열

길이 제약 조건: 최소 길이는 0입니다. 최대 길이 1,024.

필수 여부: 아니요

응답 구문

{ "Message": "string", "Response": "string", "StatusCode": number, "Url": "string" }

Response Elements

작업이 성공하면 서비스가 HTTP 200개의 응답을 다시 보냅니다.

다음 데이터는 서비스에서 JSON 형식으로 반환됩니다.

Message

테스트 성공 여부를 나타내는 메시지입니다.

참고

빈 문자열이 반환되는 경우 가장 가능성이 높은 원인은 잘못된 사용자 이름 또는 암호로 인해 인증에 실패했기 때문입니다.

유형: 문자열

Response

API Gateway 또는 Lambda 함수에서 반환되는 응답입니다.

유형: 문자열

StatusCode

API Gateway 또는 Lambda 함수의 응답인 HTTP 상태 코드입니다.

유형: 정수

Url

사용자를 인증하는 데 사용되는 서비스의 엔드포인트입니다.

타입: 문자열

길이 제약 조건: 최소 길이는 0입니다. 최대 길이는 255입니다.

Errors

모든 작업에 공통되는 오류에 대한 내용은 일반적인 오류 섹션을 참조하십시오.

InternalServiceError

이 예외는 AWS Transfer Family 서비스에서 오류가 발생할 때 발생합니다.

HTTP 상태 코드: 500

InvalidRequestException

이 예외는 클라이언트가 잘못된 형식의 요청을 제출할 때 던져집니다.

HTTP 상태 코드: 400

ResourceNotFoundException

AWS Transfer Family 서비스에서 리소스를 찾을 수 없는 경우 이 예외가 발생합니다.

HTTP 상태 코드: 400

ServiceUnavailableException

AWS Transfer Family 서비스를 사용할 수 없으므로 요청이 실패했습니다.

HTTP 상태 코드: 500

예시

다음 요청은 사용자 이름과 암호 조합이 에 사용할 수 있는 유효한 자격 증명이라는 메시지를 자격 증명 공급자로부터 반환합니다 AWS Transfer Family.

샘플 요청

{ "ServerID": "s-01234567890abcdef", "UserName": "my_user", "UserPassword": "MyPassword-1" }

다음 응답은 성공적인 테스트에 대한 샘플 응답을 보여줍니다.

샘플 응답

"Response":" {\"homeDirectory\":\"/mybucket001\",\"homeDirectoryDetails\":null,\"homeDirectoryType\":\"PATH\",\"posixProfile\":null, \"publicKeys\":\"[ssh-rsa-key]\",\"role\":\"arn:aws:iam::123456789012:role/my_role\",\"policy\":null,\"username\":\"transferuser002\", \"identityProviderType\":null,\"userConfigMessage\":null)"} "StatusCode": "200", "Message": ""

다음 응답은 지정된 사용자가 액세스 권한이 있는 둘 이상의 그룹에 속해 있음을 나타냅니다.

"Response":"", "StatusCode":200, "Message":"More than one associated access found for user's groups."

API Gateway를 사용하여 사용자 지정 자격 증명 공급자를 생성하고 구성한 경우 다음 명령을 입력하여 사용자를 테스트할 수 있습니다.

aws transfer test-identity-provider --server-id s-0123456789abcdefg --user-name myuser

여기서 s-0123456789abcdefg는 전송 서버이고 myuser는 맞춤 사용자의 사용자 이름입니다.

명령이 성공하면 다음과 유사한 응답이 표시됩니다, 여기서:

  • AWS 계정 ID는 012345678901입니다.

  • 사용자 역할: user-role-api-gateway

  • 홈 디렉터리는 myuser-bucket

  • 퍼블릭 키는 public-key

  • 호출URL은 호출입니다.URL

{ "Response": "{\"Role\": \"arn:aws:iam::012345678901:role/user-role-api-gateway\",\"HomeDirectory\": \"/myuser-bucket\",\"PublicKeys\": \"[public-key]\"}", "StatusCode": 200, "Message": "", "Url": "https://invocation-URL/servers/s-0123456789abcdefg/users/myuser/config" }

참고

언어별 중 하나API에서 이 를 사용하는 방법에 대한 자세한 내용은 다음을 AWS SDKs참조하세요.