Amazon Cognito

簡單安全的使用者註冊/登入

Amazon Cognito 可讓您快速輕鬆地將使用者註冊/登入和存取控制新增到 Web 和行動應用程式。Cognito 可擴展到數百萬使用者,且支援以社交身分供應商 (如 Facebook、Google 和 Amazon) 以及透過 SAML 2.0 以企業身分供應商進行登入。

將您的時間用來建立出色的應用程式。

讓 Amazon Cognito 處理身份驗證。

Cognito-SI-CI-IMG_landing_userpool

安全且可擴展的使用者目錄

Amazon Cognito 使用者集區提供安全的使用者目錄,可擴展至數億個使用者。使用者集區是可輕鬆設定的全受管服務,無須擔心擴展伺服器基礎設施。

請參閱更多有關 Cognito 使用者集區的資訊

 

Cognito-SI-CI-IMG_landing_federation

社交與企業聯合身分

有了 Amazon Cognito,您的使用者可透過社交身分供應商 (如 Google、Facebook 和 Amazon) 以及透過 SAML 使用企業身分供應商 (如 Microsoft Active Directory) 進行登入。

請參閱更多有關聯合的資訊

 

Cognito-SI-CI-IMG_landing_security

標準身份驗證

Amazon Cognito 使用者集區是標準身分供應商,它支援身分和存取管理標準,如 Oauth 2.0、SAML 2.0 和 OpenID Connect。

請參閱更多有關標準身份驗證的資訊

 

Cognito-SI-CI-IMG_landing_compliance

應用程式和使用者的安全

Amazon Cognito 支援多重因素認證以及靜態資料和傳輸中資料的加密。Amazon Cognito 使用者集區不但為 PCI DSS 合規且符合 HIPAA 資格

請參閱更多有關安全與合規的資訊

 

Cognito-SI-CI-IMG_landing_access

AWS 資源的存取控制

Amazon Cognito 提供從應用程式控制存取後端資源的解決方案。您可以定義角色並將使用者對應到不同角色,如此一來,您的應用程式可以只存取授權每位使用者的資源。

請參閱更多有關控制 AWS 資源存取的資訊

Cognito-SI-CI-IMG_landing_customui

輕鬆與您的應用程式整合

透過內建 UI 以及聯合身分供應商的簡單組態,您可以整合 Amazon Cognito,在最短時間內將註冊/登入新增到您的應用程式。您可以自訂 UI,將公司品牌放在前面和中央,以便與所有使用者互動。

查看如何快速地將 Cognito 與您的應用程式整合

 

就是這麼簡單

  • iOS Objective C
    Cognito-SI-icon_ios
  • Android
    Cognito-SI-icon_android
  • iOS Swift
    Cognito-SI-icon_ios
  • Web Apps
    Cognito-SI-icon_web
  • iOS Objective C
  • 使用軟體開發套件與幾行程式碼登入使用者和取回字符。
    // 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
  • 使用軟體開發套件與幾行程式碼登入使用者和取回字符。
    //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
  • 使用軟體開發套件與幾行程式碼登入使用者和取回字符。
    // 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
      }
    }
  • Web Apps
  • 使用軟體開發套件與幾行程式碼登入使用者和取回字符。
    // Add amazon-cognito-auth-js SDK in your application.
    //1) -- Create an instance of Auth --
      var authData = {
      ClientId                       : '<add ClientId>',
      AppWebDomain       : '<add App Web Domain>',
      TokenScopesArray   : '<add scope array>',
      RedirectUriSignIn    : '<add redirect url when signed in>',
      RedirectUriSignOut : '<add redirect url when signed out>'
    };
    var auth = new AWSCognito.CognitoIdentityServiceProvider.CognitoAuth(authData);
     
    // 2) -- Get tokens for your user --
    auth.getSession();
Cognito_SI_IMG_landing_iphone

受開發人員信任

Cognito_Logo_Edmunds
Cognito_Logo_Sega
Cognito_Logo_ConcreteSoftware
Cognito_Logo_Infraware
Cognito_Logo_Moovit

按使用量付費。無最低費用。

如果您使用 Cognito Identity 建立使用者集區,則只需要按照每月作用中使用者 (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 聯合身分登入的使用者,超過 50 個使用者免費方案的價格是每 MAU 0.45 USD。如果您有 10,000 個或更多的使用者,請聯絡我們以取得客製定價。Amazon Cognito 對於使用聯合身分功能取得驗證使用者或訪客使用者的 AWS 登入資料一律不收取費用。請在這裡參閱更多我們的定價


開始使用 AWS

icon1

註冊 AWS 帳戶

立即存取 AWS 免費方案
icon2

參加 10 分鐘教學課程

跟著 簡單的教學課程一同探索並學習。
icon3

使用 AWS 開始構建

運用逐步操作指南開始建構,協助您推出 AWS 專案
安全、可擴展、在最短時間內註冊。
準備好開始使用了嗎?