Amazon Cognito

シンプルでセキュアなユーザーのサインアップ、サインイン、およびアクセスコントロール

Amazon Cognito を使用すれば、ウェブアプリケーションおよびモバイルアプリに素早く簡単にユーザーのサインアップ/サインインおよびアクセスコントロールの機能を追加できます。Amazon Cognito は、数百万人のユーザーにスケールし、Facebook、Google、Amazon などのソーシャル ID プロバイダー、および SAML 2.0 によるエンタープライズ ID プロバイダーを使用したサインインをサポートします。

素晴らしいアプリの作成に時間をお使いください。

認証は Amazon Cognito におまかせください。

Cognito-SI-CI-IMG_landing_userpool

セキュアでスケーラブルなユーザーディレクトリ

Amazon Cognito ユーザープールは、何億人ものユーザーにスケールするセキュアなユーザーディレクトリを作成できます。フルマネージドサービスのユーザープールは、サーバーインフラストラクチャの立ち上げを気にすることなく、簡単にセットアップできます。

Cognito ユーザープールの詳細を確認する

 

Cognito-SI-CI-IMG_landing_federation

ソーシャルおよびエンタープライズ ID フェデレーション

Amazon Cognito を使用すれば、Google、Facebook、Amazon などのソーシャル ID プロバイダーや、SAML による Microsoft Active Directory などのエンタープライズ ID プロバイダーを通してサインインすることができます。

フェデレーションの詳細を確認する

 

Cognito-SI-CI-IMG_landing_security

標準ベースの認証

Amazon Cognito ユーザープールは、標準ベースの ID プロバイダーであり、Oauth 2.0、SAML 2.0、OpenID Connect などの ID およびアクセス管理標準をサポートします。

標準ベースの認証の詳細を確認する

 

Cognito-SI-CI-IMG_landing_compliance

お客様のアプリとユーザーのセキュリティ

Amazon Cognito は、多要素認証と、保存データおよび転送データの暗号化をサポートします。Amazon Cognito は HIPAA に準拠し、PCI DSSSOCISO/EIC 27001ISO/EIC 27017ISO/EIC 27018ISO 9001 に適合しています。

セキュリティとコンプライアンスの詳細を確認する

 

Cognito-SI-CI-IMG_landing_access

AWS リソースのアクセスコントロール

Amazon Cognito は、お客様のアプリのバックエンドリソースに対するアクセスをコントロールするソリューションです。ロールを定義してユーザを異なるロールにマッピングすることで、各ユーザに対して許可されているリソースにのみアプリがアクセスできるようにすることができます。

AWS リソースのアクセスコントロールの詳細を確認する

Cognito-SI-CI-IMG_landing_customui

アプリと簡単に統合

フェデレーション ID プロバイダー用の組み込み UI と簡単な設定を使用すれば、数分で Amazon Cognito を統合してお客様のアプリにサインイン、サインアップ、アクセスコントロールを追加することができます。UI をカスタマイズして、あらゆるユーザーとのやり取りで御社のブランドを前面に出すことができます。

迅速に Amazon Cognito とアプリを統合する方法を確認する

 

こんなに簡単に実装できます

  • iOS Objective C
    Cognito-SI-icon_ios
  • Android
    Cognito-SI-icon_android
  • iOS Swift
    Cognito-SI-icon_ios
  • React Native
    react_icon_white
  • ウェブアプリ
    Cognito-SI-icon_web
  • 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));
Cognito_SI_IMG_landing_iphone

開発者から信頼されています

Conde_Nast_Logo_600x400
Alpha_Apps_600x400
Kroll_Logo_600x400

実際に使用した分のみ、お支払いいただきます。最低料金はありません。

ユーザープールを作成するために Amazon Cognito ID を使用している場合、月間アクティブユーザー (MAU) のみに基づいてお支払いいただきます。その暦月に、サインアップ、サインイン、トークンの更新またはパスワードの変更など、当該ユーザーに関わる ID 操作が発生した場合、そのユーザーは 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 です。 フェデレーション ID 機能を使用した、認証済みユーザーやゲストユーザーの AWS 認証情報の取得は、Amazon Cognito では常に無料です。料金についてはこちらをお読みください。


AWS の使用を開始する

icon1

AWS アカウントにサインアップする

AWS 無料利用枠にすぐにアクセスできます。
icon2

10 分間チュートリアルで学ぶ

簡単なチュートリアルで学習します。
icon3

AWS で構築を開始する

ステップバイステップガイドに従って構築を開始すれば、 AWS プロジェクトを立ち上げることができます。
セキュアでスケーラブルなサインアップを数分で。
構築の準備はできましたか ?