개발자 인증된 자격 증명(자격 증명 풀)Amazon Cognito는 Google(자격 증명 풀), Login with Amazon(자격 증명 풀), Facebook(자격 증명 풀) 및 Sign in with Apple(자격 증명 풀)을 통한 웹 ID 페더레이션 이외에 개발자 인증 자격 증명을 지원합니다. 개발자 인증 자격 증명을 사용하면 Amazon Cognito로 사용자 데이터를 동기화하고 AWS 리소스에 액세스하면서도 자신의 기존 인증 프로세스를 통해 사용자를 등록 및 인증할 수 있습니다. 개발자 인증 자격 증명의 사용에는 최종 사용자 장치, 인증을 위한 백엔드 및 Amazon Cognito 간의 상호 작용이 포함됩니다. 자세한 내용은 AWS 블로그에서 Understanding Amazon Cognito Authentication Part 2: Developer Authenticated Identities(Amazon Cognito 인증 이해 2부: 개발자 인증 자격 증명)를 참조하세요. Show 인증 흐름 이해개발자 인증 자격 증명 인증 흐름과 해당 인증 흐름이 외부 공급자 인증 흐름과 어떻게 다른지에 대한 자세한 내용은 자격 증명 풀(페더레이션 자격 증명) 인증 흐름 섹션을 참조하세요. 개발자 공급자 이름 정의 및 자격 증명 풀에 연결현재 Amazon Cognito 사용자 풀의 새 콘솔로 마이그레이션한 경우에도 기존 콘솔에서 Amazon Cognito 자격 증명 풀을 구성해야 합니다. 새 콘솔에서 페더레이션 자격 증명(Federated identities)을 선택하여 자격 증명 풀 콘솔로 이동합니다. 개발자 인증 자격 증명을 사용하려면 개발자 공급자에 연결된 자격 증명 풀이 필요합니다. 이렇게 하려면 다음 단계를 따르세요.
참고: 공급자 이름을 설정하면 해당 이름을 변경할 수 없습니다. Amazon Cognito 콘솔 작업에 대한 추가 지침은 Amazon Cognito 콘솔 사용 섹션을 참조하세요. 자격 증명 공급자 구현Android개발자 인증 자격 증명을 사용하려면 다음은 자격 증명 공급자의 간단한 예입니다.
이 자격 증명 공급자를 사용하려면
해당 공급자를
iOS - Objective-C개발자 인증 자격 증명을 사용하려면 AWSCognitoCredentialsProviderHelper를 확장하는 고유한 자격 증명 공급자 클래스를 구현합니다. 자격 증명 공급자 클래스는 토큰이 속성으로 포함된 응답 객체를 반환해야 합니다.
이 자격 증명 공급자를 사용하려면 다음 예에
표시된 대로 해당 공급자를
미인증 자격 증명 및 개발자 인증 자격 증명을 둘 다 지원하려면
개발자 인증 자격 증명과 소셜 공급자를 지원하려면
iOS - Swift개발자 인증 자격 증명을 사용하려면 AWSCognitoCredentialsProviderHelper를 확장하는 고유한 자격 증명 공급자 클래스를 구현합니다. 자격 증명 공급자 클래스는 토큰이 속성으로 포함된 응답 객체를 반환해야 합니다.
이 자격 증명 공급자를 사용하려면 다음 예에 표시된 대로 해당 공급자를
미인증 자격 증명 및 개발자 인증 자격 증명을 둘 다 지원하려면
개발자 인증 자격 증명과 소셜 공급자를 지원하려면
JavaScript백엔드에서 자격 증명 ID 및 세션 토큰을 가져온 경우
이를
Unity개발자 인증 자격 증명을 사용하려면
위의 코드는 스레드 디스패처 객체를 사용하여 코루틴을 호출합니다. 프로젝트에서 이 작업을 수행할 방법이 없는 경우 장면에서 다음 스크립트를 사용할 수 있습니다.
Xamarin개발자 인증 자격
증명을 사용하려면
로그인 맵 업데이트(Android 및 iOS 전용)Android인증 시스템을 통해 사용자를 성공적으로 인증한 후 인증 시스템에서 사용자를 고유하게 식별하는 영숫자 문자열인 개발자 공급자 이름 및 개발자 사용자 식별자로 로그인 맵을 업데이트합니다.
iOS - Objective-CiOS SDK는 자격 증명이 없거나 만료된 경우
iOS - SwiftiOS SDK는 자격 증명이 없거나 만료된 경우
토큰 가져오기(서버 측)GetOpenIdTokenForDeveloperIdentity를 호출하여 토큰을 받습니다. AWS 개발자 자격 증명을 사용하여 백엔드에서 이 API를 호출해야 합니다. 클라이언트 SDK에서 호출해서는 안 됩니다. API는 Cognito 자격 증명 풀 ID, 자격 증명 공급자 이름이 키로 식별자가 값으로 포함된 로그인 맵 및 필요할 경우 Cognito 자격 증명 ID를 받습니다(즉, 미인증 사용자가 인증된 사용자로 변경됨). 식별자는 사용자의 사용자 이름, 이메일 주소 또는 숫자 값일 수 있습니다. API는 사용자에 대한 고유한 Cognito ID와 최종 사용자에 대한 OpenID Connect 토큰을 사용하여 호출에 응답합니다.
다음 Java 조각은 Amazon Cognito 클라이언트를 시작하고 개발자 인증 자격 증명에 대한 토큰을 검색하는 방법을 보여줍니다.
위의 단계에 따라 앱에 개발자 인증 자격 증명을 통합할 수 있어야 합니다. 문제나 질문이 있는 경우 자유롭게 포럼에 게시해 주세요. 개발자 인증 자격 증명을 사용할 때 백엔드에서 모든 공급자 연결이 수행되어야 합니다. 사용자의 소셜 자격 증명(Login with Amazon, Apple, Facebook 또는 Google로 로그인)에 사용자 지정 자격 증명을 연결하려면 GetOpenIdTokenForDeveloperIdentity를 호출할 때 로그인 맵에 자격 증명 공급자 토큰을 추가하세요. 이렇게 하려면 클라이언트 SDK에서 백엔드를 호출하여 최종 사용자를 인증할 때 최종 사용자의 소셜 공급자 토큰을 추가로 전달하세요. 예를 들어, 사용자 지정 자격 증명을 Facebook에 연결하려고 시도할 경우
공급자 간 전환 지원Android애플리케이션에서는 개발자 인증 자격 증명과 함께 퍼블릭 공급자(Login with Amazon, Sign in with Apple, Facebook 또는 Google)를 사용하여 미인증 자격 증명 또는 인증 자격 증명을 지원하는 것이 필요할 수 있습니다. 개발자 인증 자격 증명과 다른 자격 증명(퍼블릭 공급자를 사용하는 미인증 자격 증명 및 인증 자격 증명) 간의 본질적인 차이점은 identityId 및 토큰을 얻는 방식입니다. 다른 자격 증명의 경우 모바일 애플리케이션은 인증 시스템과 접촉하는 대신 Amazon Cognito와 직접 상호 작용합니다. 따라서 모바일 애플리케이션은 앱 사용자가 선택한 사항에 따라 두 개의 뚜렷한 흐름을 지원할 수 있어야 합니다. 이를 위해 사용자 지정 자격 증명 공급자를 일부 변경해야 합니다.
마찬가지로
iOS - Objective-C애플리케이션에서는 개발자 인증 자격 증명과 함께 퍼블릭 공급자(Login with Amazon, Sign in with Apple, Facebook 또는 Google)를 사용하여 미인증 자격 증명 또는 인증 자격 증명을 지원하는 것이 필요할 수 있습니다. 이렇게 하려면 현재 자격 증명 공급자에
따라 정확한 로그인 맵을 반환할 수 있도록 AWSCognitoCredentialsProviderHelper
미인증 상태에서 인증 상태로 전환하면 iOS - Swift애플리케이션에서는 개발자 인증 자격 증명과 함께 퍼블릭 공급자(Login with Amazon, Sign in with Apple, Facebook 또는 Google)를 사용하여 미인증 자격 증명 또는 인증 자격 증명을 지원하는 것이 필요할 수 있습니다. 이렇게 하려면 현재 자격 증명 공급자에 따라 정확한 로그인 맵을 반환할 수 있도록 AWSCognitoCredentialsProviderHelper
미인증 상태에서 인증 상태로 전환하면 Unity애플리케이션에서는 개발자 인증 자격 증명과 함께 퍼블릭 공급자(Login with Amazon, Sign in with Apple, Facebook 또는 Google)를 사용하여 미인증 자격 증명 또는 인증 자격 증명을 지원하는 것이 필요할 수 있습니다. 개발자 인증 자격 증명과 다른 자격 증명(퍼블릭 공급자를 사용하는 미인증 자격 증명 및 인증 자격 증명) 간의 본질적인 차이점은 identityId 및 토큰을 얻는 방식입니다. 다른 자격 증명의 경우 모바일 애플리케이션은 인증 시스템과 접촉하는 대신 Amazon Cognito와 직접 상호 작용합니다. 따라서 모바일 애플리케이션은 앱 사용자가 선택한 사항에 따라 두 개의 뚜렷한 흐름을 지원할 수 있어야 합니다. 이를 위해 사용자 지정 자격 증명 공급자를 일부 변경해야 합니다. Unity에서 이를 수행하기 위한 권장 방법은 AbstractCognitoIdentityProvider 대신 AmazonCognitoEnhancedIdentityProvide에서 자격 증명 공급자를 확장하고, 사용자가 고유한 백엔드로 인증되지 않은 경우 고유한 메서드 대신 상위 RefreshAsync 메서드를 호출하는 것입니다. 사용자가 인증 상태이면 이전에 설명한 것과 동일한 흐름을 사용할 수 있습니다. Xamarin애플리케이션에서는 개발자 인증 자격 증명과 함께 퍼블릭 공급자(Login with Amazon, Sign in with Apple, Facebook 또는 Google)를 사용하여 미인증 자격 증명 또는 인증 자격 증명을 지원하는 것이 필요할 수 있습니다. 개발자 인증 자격 증명과 다른 자격 증명(퍼블릭 공급자를 사용하는 미인증 자격 증명 및 인증 자격 증명) 간의 본질적인 차이점은 identityId 및 토큰을 얻는 방식입니다. 다른 자격 증명의 경우 모바일 애플리케이션은 인증 시스템과 접촉하는 대신 Amazon Cognito와 직접 상호 작용합니다. 따라서 모바일 애플리케이션은 앱 사용자가 선택한 사항에 따라 두 개의 뚜렷한 흐름을 지원할 수 있어야 합니다. 이를 위해 사용자 지정 자격 증명 공급자를 일부 변경해야 합니다. |