Amazon Cognito를 사용하면 웹과 모바일 앱에 빠르고 손쉽게 사용자 가입, 로그인 및 액세스 제어 기능을 추가할 수 있습니다. Amazon Cognito에서는 수백만의 사용자로 확장할 수 있고, Apple, Facebook, Google 및 Amazon과 같은 소셜 자격 증명 공급자와 엔터프라이즈 자격 증명 공급자(SAML 2.0 및 OpenID Connect 사용)를 통한 로그인을 지원합니다.
뛰어난 앱을 만드는 데 시간을 할애하십시오.
인증은 Amazon Cognito가 처리하겠습니다.

안전하고 확장 가능한 자격 증명 스토어
Amazon Cognito 사용자 풀은 수백만 명의 사용자로 확장할 수 있는 안전한 자격 증명 스토어를 제공합니다. Cognito 사용자 풀은 어떤 인프라도 프로비저닝하지 않고 더욱 쉽게 설정할 수 있으며 사용자 풀의 모든 멤버는 소프트웨어 개발 키트(SDK)를 통해 관리할 수 있는 디렉터리 프로필을 가집니다.
Cognito 사용자 풀에 대해 자세히 알아보기

앱과 사용자에 대한 보안
Amazon Cognito는 멀티 팩터 인증과 전송 데이터 및 저장 데이터의 암호화를 지원합니다. Amazon Cognito는 HIPAA 적격 서비스이며, PCI DSS, SOC, ISO/IEC 27001, ISO/IEC 27017, ISO/IEC 27018 및 ISO 9001을 준수합니다.
보안 및 규정 준수에 대해 자세히 알아보기

AWS 리소스에 대한 액세스 제어
Amazon Cognito는 앱의 AWS 리소스에 대한 액세스를 제어하는 솔루션을 제공합니다. 역할을 정의하고 사용자를 서로 다른 역할에 연결할 수 있으므로 해당 사용자에게 액세스 권한이 부여된 리소스에만 앱이 액세스할 수 있습니다. 또는 AWS Identity and Access Management 권한 정책에 자격 증명 공급자의 속성을 사용하여 특정 속성 조건을 충족하는 사용자로 리소스 액세스를 제어할 수 있습니다.
AWS 리소스에 대한 액세스 제어에 대해 자세히 알아보기

쉽게 앱과 통합
자격 증명 공급자 연동을 위한 기본 UI와 간편한 구성을 사용해 Amazon Cognito를 통합하여 몇 분 만에 앱에 사용자 가입, 로그인 및 액세스 제어 기능을 추가할 수 있습니다. UI를 사용자 지정하여 모든 사용자 상호 작용 화면에 회사 브랜드를 넣을 수 있습니다.
신속하게 Amazon Cognito를 앱에 통합하는 방법 알아보기
정말 간단합니다
-
iOS Objective C
-
Android
-
iOS Swift
-
React Native
-
웹 앱
-
iOS Objective C
-
SDK와 코드 몇 줄로 사용자를 로그인시키고 토큰을 가져올 수 있습니다.
// iOS Objective-C // AppDelegate.m - (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey, id> *)options { return [[AWSCognitoAuth defaultCognitoAuth] application:app openURL:url options:options]; } // ViewController.m AWSCognitoAuth * cognitoAuth = [AWSCognitoAuth defaultCognitoAuth]; [cognitoAuth getSession:self completion:^(AWSCognitoAuthUserSession * _Nullable session, NSError * _Nullable error) { if(error) { NSLog(@"Error: %@", error.userInfo[@"error"]); } else { //Do something with session NSLog(@"Claims: %@", t.result.idToken.claims); } }];
-
Android
-
SDK와 코드 몇 줄로 사용자를 로그인시키고 토큰을 가져올 수 있습니다.
//Android // 1) -- Create an instance of Auth -- Auth.Builder builder = new Auth.Builder() .setAppClientId(getString(R.string.cognito_client_id)); .setAppCognitoWebDomain(getString(R.string.cognito_web_domain)); .setApplicationContext(getApplicationContext()); .setAuthHandler(new callback()); .setSignInRedirect(getString(R.string.app_redirect_signin)); .setSignOutRedirect(getString(R.string.app_redirect_signout)); .setScopes(userScopes); auth = builder.build(); // 2) – Set up url redirect in your app manifest -- <intent-filter> <data android:host="YOUR_REDIRECT_URI_AUTHORITY"android:scheme="YOUR_REDIRECT_SCHEME"/> </intent-filter> // 3) -- Get tokens for your user -- auth.getSession();
-
iOS Swift
-
SDK와 코드 몇 줄로 사용자를 로그인시키고 토큰을 가져올 수 있습니다.
// iOS Swift // AppDelegate.swift func application(_ app: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey : Any] = [:]) -> Bool { return AWSCognitoAuth.default().application(app, open: url, options: options) } // ViewController.swift let cognitoAuth = AWSCognitoAuth.default() cognitoAuth.getSession(self) { (session:AWSCognitoAuthUserSession?, error:Error?) in if(error != nil) { print((error! as NSError).userInfo["error"] as? String) }else { //Do something with session } }
-
React Native
-
SDK와 코드 몇 줄로 사용자를 로그인시키고 토큰을 가져올 수 있습니다.
// Add 'aws-amplify' and 'aws-amplify-react-native' libraries into your application // Configure Auth category with your Amazon Cognito credentials Amplify.configure({ Auth: { identityPoolId: 'XX-XXXX-X:XXXXXXXX-XXXX', // Amazon Cognito Identity Pool ID region: 'XX-XXXX-X', // Amazon Cognito Region } }); // The withAuthenticator component adds Sign Up and Sign In capabilities to your app export default withAuthenticator(class App extends React.Component { // ... your main component });
-
웹 앱
-
SDK와 코드 몇 줄로 사용자를 로그인시키고 토큰을 가져올 수 있습니다.
// Add 'aws-amplify' library into your application // Configure Auth category with your Amazon Cognito credentials Amplify.configure({ Auth: { identityPoolId: 'XX-XXXX-X:XXXXXXXX-XXXX', // Amazon Cognito Identity Pool ID region: 'XX-XXXX-X', // Amazon Cognito Region } }); // Call Auth.signIn with user credentials Auth.signIn(username, password) .then(user => console.log(user)) .catch(err => console.log(err));

개발자가 사용



사용한 만큼만 비용을 지불합니다. 최소 비용이 없습니다.
사용자 풀을 생성하는 데 Amazon Cognito 자격 증명을 사용하는 경우, 월별 활성 사용자(MAU)만을 기준으로 비용을 지불합니다. 해당 역월 내에 가입, 로그인, 토큰 새로 고침, 암호 변경 또는 사용자 계정 속성 업데이트와 같이 해당 사용자와 관련된 자격 증명 작업이 있는 경우, 사용자는 MAU로 간주됩니다. 후속 세션이나 해당 역월의 비활성 사용자에 대해서는 요금이 부과되지 않습니다.
요금 계층(MAU) | MAU당 요금 |
처음 50,000 | 무료 |
다음 50,000 | 0.00550 USD |
다음 900,000 | 0.00460 USD |
다음 9,000,000 | 0.00325 USD |
10,000,000 초과 | 0.00250 USD |
SAML 또는 OIDC 연동을 통해 로그인하는 사용자의 경우, 50 MAU의 프리 티어를 초과하는 MAU에 대한 요금은 MAU당 0.015 USD입니다. Amazon Cognito에서는 연동 자격 증명 기능을 사용하여 권한이 있는 사용자 또는 게스트 사용자에 대한 AWS 자격 증명을 확보하는 비용이 무료입니다. AWS 요금은 여기에서 자세히 알아보십시오.