기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
TestIdentityProvider
파일 전송 프로토콜 지원 서버의 IdentityProviderType
가 AWS_DIRECTORY_SERVICE
또는 API_Gateway
인 경우 ID 제공자가 성공적으로 설정되었는지 테스트합니다. 서버를 생성하는 즉시 이 작업을 호출하여 인증 방법을 테스트하는 것이 좋습니다. 이렇게 하면 ID 제공자 통합 문제를 해결하여 사용자가 서비스를 성공적으로 사용할 수 있도록 할 수 있습니다.
ServerId
및 UserName
파라미터가 필요합니다. ServerProtocol
, SourceIp
, 및 UserPassword
은 모두 옵션입니다.
유념할 사항:
-
서버의
IdentityProviderType
가SERVICE_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참조하세요.