用戶身份認(rèn)證授權(quán)-Amazon Cognito

用戶身份認(rèn)證授權(quán)-Amazon Cognito

專用API
服務(wù)商 服務(wù)商: 亞馬遜云廠商
【更新時間: 2024.04.11】 Amazon Cognito作為AWS的安全性、身份與合規(guī)性產(chǎn)品之一,每月處理超過1000億次身份驗(yàn)證,它為Web和移動應(yīng)用程序提供了全面的客戶身份和訪問管理(CIAM)解決方案。
免費(fèi) (永久免費(fèi)) 去服務(wù)商官網(wǎng)采購>
瀏覽次數(shù)
62
采購人數(shù)
4
試用次數(shù)
0
! SLA: N/A
! 響應(yīng): N/A
! 適用于個人&企業(yè)
收藏
×
完成
取消
×
書簽名稱
確定
<
產(chǎn)品介紹
>

什么是Amazon Cognito的用戶身份認(rèn)證授權(quán)?

Amazon Cognito是AWS提供的一種用戶身份和訪問管理服務(wù),它能夠幫助開發(fā)者在Web和移動應(yīng)用程序中輕松實(shí)現(xiàn)客戶身份驗(yàn)證、授權(quán)和用戶管理等功能,為應(yīng)用程序提供安全、可擴(kuò)展的身份和訪問控制解決方案,支持多種身份驗(yàn)證方式,包括本地用戶池、社交身份提供商和企業(yè)身份提供商等,同時具備高級安全功能,如基于風(fēng)險(xiǎn)的自適應(yīng)身份驗(yàn)證和憑證泄露監(jiān)控等,以滿足不同應(yīng)用程序的安全需求。

 

什么是Amazon Cognito的用戶身份認(rèn)證授權(quán)接口?

由服務(wù)使用方的應(yīng)用程序發(fā)起,以Restful風(fēng)格為主、通過公網(wǎng)HTTP協(xié)議調(diào)用Amazon Cognito的用戶身份認(rèn)證授權(quán),從而實(shí)現(xiàn)程序的自動化交互,提高服務(wù)效率。

Amazon Cognito的用戶身份認(rèn)證授權(quán)有哪些核心功能?

1.  用戶身份驗(yàn)證和授權(quán):Amazon Cognito提供了強(qiáng)大的用戶身份驗(yàn)證機(jī)制,支持本地用戶注冊和登錄,同時也允許用戶通過社交賬號(如Facebook、Google等)或企業(yè)身份提供商(如Active Directory)進(jìn)行登錄。它還支持多因素認(rèn)證(MFA),為用戶提供額外的安全保護(hù)。此外,Cognito可以為應(yīng)用程序后端資源提供細(xì)粒度的訪問控制,確保只有授權(quán)用戶才能訪問特定資源。

2.  高級安全功能:該服務(wù)具備一系列高級安全特性,例如基于風(fēng)險(xiǎn)的自適應(yīng)身份驗(yàn)證,能夠根據(jù)用戶的行為和上下文信息動態(tài)調(diào)整身份驗(yàn)證要求,提高安全性的同時減少對用戶的干擾。憑證泄露監(jiān)控功能可以檢測用戶憑據(jù)是否在已知的數(shù)據(jù)泄露事件中被泄露,并及時通知用戶進(jìn)行密碼更改。安全指標(biāo)則幫助開發(fā)者監(jiān)控和評估應(yīng)用程序的安全狀況,及時發(fā)現(xiàn)潛在的安全問題。

3.  可擴(kuò)展的用戶目錄:Amazon Cognito擁有完全托管式的高性能用戶目錄,能夠支持?jǐn)?shù)百萬用戶規(guī)模的應(yīng)用程序。它提供了靈活的用戶管理功能,包括用戶注冊、屬性管理、分組管理等,方便開發(fā)者根據(jù)業(yè)務(wù)需求對用戶進(jìn)行分類和管理。此外,Cognito還支持用戶池的自定義屬性,允許開發(fā)者存儲和檢索與用戶相關(guān)的額外信息,以滿足特定業(yè)務(wù)場景的需求。

4.  聯(lián)合身份登錄功能:通過支持OIDC Connect和SAML 2.0等標(biāo)準(zhǔn)協(xié)議,Amazon Cognito可以實(shí)現(xiàn)與各種身份提供商的聯(lián)合身份登錄。這意味著用戶可以使用他們現(xiàn)有的身份憑證無縫訪問應(yīng)用程序,無需創(chuàng)建新的賬戶。同時,Cognito還可以與AWS服務(wù)(如Amazon S3、Amazon DynamoDB、AWS Lambda等)進(jìn)行集成,為用戶提供對這些服務(wù)的基于角色的訪問權(quán)限,簡化了應(yīng)用程序與AWS資源的交互。

5.  開發(fā)者友好性:Amazon Cognito提供了豐富的開發(fā)工具和文檔,幫助開發(fā)者快速上手和集成。它支持多種編程語言和平臺,提供了軟件開發(fā)工具包(SDK)和命令行界面(CLI),方便開發(fā)者在不同的開發(fā)環(huán)境中使用Cognito的功能。此外,Cognito還提供了詳細(xì)的API參考文檔和開發(fā)指南,為開發(fā)者提供了清晰的操作步驟和最佳實(shí)踐建議。

成本效益:Amazon Cognito采用了靈活的定價(jià)模式,根據(jù)實(shí)際使用量計(jì)費(fèi),無需預(yù)付費(fèi)用或簽訂長期合同。對于許多初創(chuàng)企業(yè)和中小型企業(yè)來說,這種定價(jià)模式可以有效降低身份和訪問管理的成本。同時,Cognito還提供了免費(fèi)套餐,允許開發(fā)者在一定額度內(nèi)免費(fèi)使用服務(wù),這對于開發(fā)和測試階段的應(yīng)用程序非常有幫助。

Amazon Cognito的用戶身份認(rèn)證授權(quán)的核心優(yōu)勢是什么?

1.  簡化身份管理:Amazon Cognito極大地簡化了應(yīng)用程序的身份管理流程。開發(fā)者無需從頭構(gòu)建和維護(hù)復(fù)雜的用戶身份驗(yàn)證和授權(quán)系統(tǒng),而是可以利用Cognito提供的現(xiàn)成功能,快速實(shí)現(xiàn)用戶注冊、登錄、密碼重置等功能。這不僅節(jié)省了開發(fā)時間和成本,還減少了因身份管理不當(dāng)而帶來的安全風(fēng)險(xiǎn)。例如,對于一個需要快速上線的移動應(yīng)用程序,開發(fā)者可以在短短幾分鐘內(nèi)集成Cognito,為用戶提供流暢的登錄體驗(yàn),同時確保應(yīng)用程序的安全性。

2.  強(qiáng)大的安全特性:在當(dāng)今數(shù)字化時代,應(yīng)用程序的安全性至關(guān)重要。Amazon Cognito提供了全面的安全功能,如自適應(yīng)身份驗(yàn)證、憑證泄露監(jiān)控等,幫助開發(fā)者保護(hù)用戶數(shù)據(jù)和應(yīng)用程序的安全。這些安全特性可以有效防止惡意攻擊和數(shù)據(jù)泄露事件的發(fā)生,增強(qiáng)用戶對應(yīng)用程序的信任。例如,當(dāng)檢測到用戶登錄行為異常時,Cognito可以自動要求用戶進(jìn)行額外的身份驗(yàn)證步驟,從而阻止?jié)撛诘墓粽咴L問用戶賬戶。

3.  高性能和可擴(kuò)展性:隨著應(yīng)用程序用戶數(shù)量的增長,身份管理系統(tǒng)的性能和可擴(kuò)展性成為關(guān)鍵因素。Amazon Cognito的高性能用戶目錄能夠輕松應(yīng)對數(shù)百萬用戶規(guī)模的訪問請求,確保用戶在高峰時段也能獲得快速、穩(wěn)定的登錄體驗(yàn)。此外,Cognito的可擴(kuò)展架構(gòu)可以根據(jù)應(yīng)用程序的實(shí)際需求自動調(diào)整資源,無需開發(fā)者進(jìn)行復(fù)雜的配置和優(yōu)化,使得應(yīng)用程序能夠平滑地?cái)U(kuò)展到更大的用戶群體。

4.  無縫集成AWS服務(wù):作為AWS生態(tài)系統(tǒng)的一部分,Amazon Cognito與AWS的其他服務(wù)緊密集成。開發(fā)者可以輕松地將Cognito與Amazon S3、Amazon DynamoDB、AWS Lambda等服務(wù)結(jié)合使用,實(shí)現(xiàn)應(yīng)用程序與AWS資源的安全交互。例如,一個需要訪問用戶數(shù)據(jù)的應(yīng)用程序后端可以使用Cognito提供的訪問令牌,以授權(quán)的方式訪問存儲在Amazon DynamoDB中的用戶信息,而無需擔(dān)心安全問題。

5.  靈活的定制能力:盡管Amazon Cognito提供了豐富的預(yù)設(shè)功能,但它也允許開發(fā)者根據(jù)自己的業(yè)務(wù)需求進(jìn)行定制。開發(fā)者可以自定義用戶界面、身份驗(yàn)證流程和用戶屬性等,使身份管理功能與應(yīng)用程序的整體風(fēng)格和業(yè)務(wù)邏輯保持一致。例如,開發(fā)者可以為登錄頁面添加自己的品牌元素,或者根據(jù)特定業(yè)務(wù)規(guī)則調(diào)整用戶注冊時需要填寫的信息字段。

6.  全球可用性和合規(guī)性:AWS在全球范圍內(nèi)擁有廣泛的基礎(chǔ)設(shè)施,Amazon Cognito也受益于此,能夠?yàn)槿蛴脩籼峁┮恢碌纳矸莨芾矸?wù)。同時,Cognito遵循嚴(yán)格的合規(guī)性標(biāo)準(zhǔn),幫助開發(fā)者滿足不同地區(qū)的數(shù)據(jù)保護(hù)法規(guī)要求。這對于那些需要在全球范圍內(nèi)運(yùn)營并遵守當(dāng)?shù)胤煞ㄒ?guī)的應(yīng)用程序來說非常重要,例如,一個跨國電子商務(wù)平臺可以利用Cognito確保用戶數(shù)據(jù)的合規(guī)存儲和處理。

在哪些場景會用到Amazon Cognito的用戶身份認(rèn)證授權(quán)?

1.  移動應(yīng)用程序開發(fā)

在移動應(yīng)用程序中,用戶身份驗(yàn)證是一個基本需求。Amazon Cognito可以為移動應(yīng)用提供簡單、安全的登錄功能,支持本地用戶注冊和社交賬號登錄。例如,一款社交類移動應(yīng)用可以通過集成Cognito,讓用戶使用Facebook或Google賬號快速登錄,同時還可以利用Cognito的用戶管理功能,對用戶的好友列表、興趣愛好等信息進(jìn)行存儲和管理,提升用戶體驗(yàn)。

 

 

2.  Web應(yīng)用程序安全

對于Web應(yīng)用程序,尤其是涉及敏感數(shù)據(jù)或需要用戶授權(quán)訪問的應(yīng)用,如在線銀行、醫(yī)療健康平臺等,Amazon Cognito的高級安全功能至關(guān)重要。它可以提供基于風(fēng)險(xiǎn)的自適應(yīng)身份驗(yàn)證,防止惡意攻擊者通過弱密碼或被盜憑據(jù)登錄用戶賬戶。同時,Cognito還可以與Web應(yīng)用程序的后端服務(wù)進(jìn)行集成,實(shí)現(xiàn)對AWS資源的安全訪問控制,確保用戶數(shù)據(jù)的安全性和隱私性。

 

 

3.  企業(yè)級應(yīng)用程序

在企業(yè)環(huán)境中,通常需要與現(xiàn)有的身份提供商(如Active Directory)進(jìn)行集成,以實(shí)現(xiàn)員工的單點(diǎn)登錄(SSO)。Amazon Cognito支持與企業(yè)身份提供商的聯(lián)合身份登錄,使得員工可以使用現(xiàn)有的企業(yè)憑證訪問基于云的應(yīng)用程序和資源。例如,一家大型企業(yè)可以利用Cognito將內(nèi)部的ERP系統(tǒng)、CRM系統(tǒng)等與AWS上的應(yīng)用程序進(jìn)行集成,員工只需登錄一次即可訪問所有相關(guān)系統(tǒng),提高了工作效率并降低了管理成本。

 

 

4.  物聯(lián)網(wǎng)(IoT)設(shè)備管理

隨著物聯(lián)網(wǎng)的發(fā)展,越來越多的設(shè)備需要接入網(wǎng)絡(luò)并進(jìn)行身份認(rèn)證。Amazon Cognito可以為IoT設(shè)備提供身份驗(yàn)證和授權(quán)服務(wù),確保只有經(jīng)過授權(quán)的設(shè)備能夠連接到云平臺并發(fā)送數(shù)據(jù)。例如,在智能家居系統(tǒng)中,各種智能設(shè)備(如智能燈泡、智能插座等)可以通過Cognito進(jìn)行身份認(rèn)證,然后將數(shù)據(jù)安全地傳輸?shù)紸WS IoT平臺進(jìn)行處理和分析,實(shí)現(xiàn)設(shè)備之間的互聯(lián)互通和智能控制。

 

 

5.  多租戶應(yīng)用程序

對于一些面向多個客戶的SaaS(Software as a Service)應(yīng)用程序,需要對不同客戶的數(shù)據(jù)進(jìn)行隔離和管理。Amazon Cognito提供了多租戶支持,允許開發(fā)者為每個客戶創(chuàng)建獨(dú)立的用戶池和訪問控制策略。例如,一個在線教育平臺可以為每個學(xué)校或機(jī)構(gòu)創(chuàng)建一個租戶,學(xué)校管理員可以管理自己的學(xué)生和教師賬戶,同時Cognito確保不同學(xué)校之間的數(shù)據(jù)完全隔離,保障了數(shù)據(jù)的安全性和隱私性。

 

 

6.  無服務(wù)器應(yīng)用程序

在無服務(wù)器架構(gòu)中,應(yīng)用程序的后端邏輯通常以AWS Lambda函數(shù)的形式運(yùn)行。Amazon Cognito可以與AWS Lambda緊密集成,為無服務(wù)器應(yīng)用程序提供用戶身份驗(yàn)證和授權(quán)服務(wù)。例如,一個無服務(wù)器架構(gòu)的移動應(yīng)用后端可以通過Cognito驗(yàn)證用戶的請求,然后觸發(fā)相應(yīng)的Lambda函數(shù)來處理業(yè)務(wù)邏輯,如數(shù)據(jù)查詢、更新等操作,同時Cognito還可以管理用戶的會話和令牌,簡化了無服務(wù)器應(yīng)用程序的開發(fā)和部署過程。

 

<
使用指南
>

Amazon Cognito API 開發(fā)指南

簡介

Amazon Cognito 是一種用于用戶身份驗(yàn)證和訪問控制的服務(wù)。它使開發(fā)者能夠輕松地添加用戶注冊、登錄和訪問控制功能到他們的應(yīng)用程序中。

準(zhǔn)備工作

注冊 AWS 賬戶

  1. 打開 AWS 注冊頁面。
  2. 按照在線說明進(jìn)行操作,完成注冊。
  3. 注冊過程中,您需要接聽電話并輸入驗(yàn)證碼。
  4. 注冊完成后,您將收到一封確認(rèn)電子郵件。

創(chuàng)建具有管理權(quán)限的用戶

  1. 登錄 AWS 管理控制臺,使用您的根用戶憑證。
  2. 為根用戶啟用多重身份驗(yàn)證 (MFA)。
  3. 啟用 AWS IAM Identity Center。
  4. 在 IAM 身份中心中,創(chuàng)建一個具有管理權(quán)限的用戶。

Amazon Cognito 概述

用戶池

用戶池是一個用戶目錄,您可以使用它來管理用戶注冊和登錄。用戶池提供以下功能:

  • 用戶注冊和登錄
  • 密碼恢復(fù)
  • 用戶屬性管理

身份池

身份池允許您為用戶提供 AWS 資源的臨時訪問權(quán)限。您可以使用身份池實(shí)現(xiàn)以下功能:

  • 社交身份提供商(如 Facebook、Google)的身份驗(yàn)證
  • 匿名身份驗(yàn)證
  • AWS 資源訪問權(quán)限控制

API 參考

用戶池 API

  • CreateUserPool: 創(chuàng)建一個新的用戶池。
  • AdminCreateUser: 在用戶池中創(chuàng)建一個新用戶。
  • AdminInitiateAuth: 使用管理員權(quán)限對用戶進(jìn)行身份驗(yàn)證。
  • ConfirmSignUp: 確認(rèn)用戶注冊。

身份池 API

  • CreateIdentityPool: 創(chuàng)建一個新的身份池。
  • GetId: 獲取身份池的身份 ID。
  • GetCredentialsForIdentity: 獲取與身份相關(guān)的臨時 AWS 憑證。
  • ListIdentities: 列出身份池中的所有身份。

安全最佳實(shí)踐

  1. 使用多重身份驗(yàn)證 (MFA): 為用戶啟用 MFA,以增加安全性。
  2. 遵循最小權(quán)限原則: 為用戶分配最小的權(quán)限集,以減少潛在的安全風(fēng)險(xiǎn)。
  3. 定期審計(jì)權(quán)限: 定期檢查和更新用戶權(quán)限,確保符合安全政策。

示例代碼

以下是一個使用 AWS SDK for JavaScript 的示例代碼,演示如何創(chuàng)建用戶池:

const AWS = require('aws-sdk');
const cognito = new AWS.CognitoIdentityServiceProvider();

const params = {
  PoolName: 'MyUserPool',
  AliasAttributes: ['email'],
  AutoVerifiedAttributes: ['email']
};

cognito.createUserPool(params, (err, data) => {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

常見問題

  1. 如何重置用戶密碼?
    • 您可以使用 ForgotPassword API 來重置用戶密碼。
  1. 如何處理用戶登錄失???
    • 使用 AdminInitiateAuth API,您可以獲取錯誤代碼并根據(jù)錯誤類型提供適當(dāng)?shù)姆答仭?/span>
  1. 如何管理用戶屬性?
    • 使用 AdminUpdateUserAttributes API 更新用戶屬性。

通過遵循本指南,您可以有效地使用 Amazon Cognito 來管理用戶身份驗(yàn)證和訪問控制。

 

詳情查看鏈接:https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-getting-started-account-iam.html

<
產(chǎn)品問答
>
?
什么是 Amazon Cognito?
借助 Amazon Cognito,您可以在幾分鐘內(nèi)將用戶注冊、登錄、訪問控制和代理的 AWS 服務(wù)訪問權(quán)限添加到您的 Web 應(yīng)用程序和移動應(yīng)用程序中。它是一項(xiàng)以開發(fā)人員為中心且經(jīng)濟(jì)高效的服務(wù),可提供安全、基于租戶并能夠擴(kuò)展到數(shù)百萬用戶的身份存儲和聯(lián)合身份驗(yàn)證選項(xiàng)。Amazon Cognito 可以幫助您創(chuàng)建品牌客戶體驗(yàn)、提高安全性并適應(yīng)您客戶的需求。例如,它支持通過社交身份提供商進(jìn)行登錄,以及使用 WebAuthn 通行密鑰或者短信和電子郵件一次性密碼進(jìn)行無密碼登錄。Amazon Cognito 支持多種合規(guī)性標(biāo)準(zhǔn),按照開放身份標(biāo)準(zhǔn)運(yùn)行,并與大量的開發(fā)資源和軟件開發(fā)工具包庫集成。 借助 Amazon Cognito,您可以專注于創(chuàng)建卓越的應(yīng)用程序體驗(yàn),而不用擔(dān)心如何構(gòu)建、保護(hù)和擴(kuò)展解決方案以進(jìn)行用戶管理和身份驗(yàn)證。
?
如何開始使用 Amazon Cognito?
您可以訪問 AWS 管理控制臺,以輕松開始使用這項(xiàng)服務(wù)。如果您沒有 Amazon Web Services 賬戶,可以在登錄控制臺時創(chuàng)建一個。創(chuàng)建用來管理用戶的用戶池或用于聯(lián)合身份的身份池之后,即可將您的應(yīng)用程序和 API 與 OAuth 和 OpenID Connect(OIDC)集成。
?
誰應(yīng)該使用 Amazon Cognito?
Amazon Cognito 是專為想要將用戶管理和同步功能添加到其移動和 Web 應(yīng)用程序的開發(fā)人員設(shè)計(jì)的。開發(fā)人員可以使用 Cognito Identity 將注冊和登錄功能添加到他們的應(yīng)用程序,以便用戶能夠安全訪問其應(yīng)用程序的資源。Cognito 還使得開發(fā)人員能夠跨設(shè)備、平臺和應(yīng)用程序同步數(shù)據(jù)。
?
Amazon Cognito 是否會公開服務(wù)器端 API?
符合。Cognito 會公開服務(wù)器端 API。您可以直接調(diào)用這些 API 來創(chuàng)建您自己的連接至 Cognito 的自定義接口。服務(wù)器端 API 在《開發(fā)人員指南》中予以說明。
?
Amazon Cognito 支持哪些平臺?
選配的 AWS 移動開發(fā)工具包中包含對 Cognito 的支持,目前支持的平臺有 iOS、Android、Unity 和 Kindle Fire。還可以在適用于 .NET、C++、Go、Java、JavaScript、PHP v3、Python、Ruby v3 的 AWS SDK 以及命令行界面中使用 Cognito。
?
可不可以使用 AWS Mobile SDK?
不可以。Cognito 會以 Web 服務(wù)的形式公開其控制和數(shù)據(jù) API。您可以使用自己的客戶端庫來直接調(diào)用服務(wù)器端 API。
?
Amazon Cognito 支持哪些形式的身份驗(yàn)證?
對于第一要素身份驗(yàn)證器,Amazon Cognito 支持用戶名/密碼、電子郵件 OTP 無密碼、短信 OTP 無密碼和 WebAuthn 通行密鑰。Cognito 支持以下多重身份驗(yàn)證器(MFA):電子郵件 OTP、短信 OTP 和 TOTP 身份驗(yàn)證器。此外,客戶和合作伙伴還可以使用 AWS Lambda 擴(kuò)展,通過自定義身份驗(yàn)證流程實(shí)現(xiàn)對第三方產(chǎn)品和定制身份驗(yàn)證器的支持。
?
我能否使用自己的身份提供商來支持用戶注冊和登錄功能?
可以。借助 Amazon Cognito,您可以輕松且安全地將注冊和登錄功能添加到您的應(yīng)用程序中。您的用戶可以使用電子郵件、手機(jī)號碼或用戶名進(jìn)行注冊和登錄。您也可以實(shí)現(xiàn)增強(qiáng)型安全功能,例如電子郵件驗(yàn)證、電話號碼驗(yàn)證和多重驗(yàn)證。借助 Cognito,您可以自定義工作流,例如為用戶注冊功能添加特定于應(yīng)用程序的邏輯,以通過 AWS Lambda 進(jìn)行欺詐檢測和用戶驗(yàn)證。要了解更多信息,請?jiān)L問我們的文檔。
?
什么是 Amazon Cognito 用戶池?
用戶池是一個基于租戶的用戶目錄,您可以為您的 Web 應(yīng)用程序和移動應(yīng)用程序配置此目錄。用戶池可以安全地存儲用戶的資料屬性,并支持自定義架構(gòu)。您可以使用 AWS 管理控制臺、AWS CLI 或 AWS 開發(fā)工具包創(chuàng)建和管理用戶群體。
?
我能否驗(yàn)證用戶在注冊應(yīng)用程序時使用的電子郵件地址和電話號碼?
能。借助 Amazon Cognito,您可以要求驗(yàn)證用戶的電子郵件地址和電話號碼,然后再向其提供對您應(yīng)用程序的訪問權(quán)限。在注冊過程中,系統(tǒng)將向用戶的電話號碼或電子郵件地址發(fā)送驗(yàn)證碼,用戶必須輸入該驗(yàn)證碼才能完成注冊并得到確認(rèn)。
<
關(guān)于我們
>
亞馬遜云科技(Amazon Web Services,簡稱AWS)是全球領(lǐng)先的云計(jì)算服務(wù)提供商,提供包括計(jì)算、存儲、數(shù)據(jù)庫、分析、機(jī)器學(xué)習(xí)、物聯(lián)網(wǎng)、移動、安全、混合云、虛擬和增強(qiáng)現(xiàn)實(shí)等在內(nèi)的廣泛服務(wù)。AWS在全球34個地理區(qū)域內(nèi)運(yùn)營108個可用區(qū),服務(wù)超過200個國家和地區(qū),幫助企業(yè)、開發(fā)者和政府機(jī)構(gòu)構(gòu)建靈活、可靠、可擴(kuò)展的云基礎(chǔ)設(shè)施。作為亞馬遜公司的一部分,AWS致力于提供創(chuàng)新的云解決方案,支持客戶實(shí)現(xiàn)數(shù)字化轉(zhuǎn)型。
聯(lián)系信息
服務(wù)時間: 早9:00-晚8:00 (法定假期除外)
電話號碼: +86 (10) 1010 0866
網(wǎng)頁在線客服: 咨詢

AWS 云計(jì)算

Amazon Web Services(AWS)是全球最全面、應(yīng)用最廣泛的云,從全球數(shù)據(jù)中心提供超過 200 項(xiàng)功能齊全的服務(wù)。數(shù)百萬客戶(包括增長最快速的初創(chuàng)公司、最大型企業(yè)和主要的政府機(jī)構(gòu))都在使用 AWS 來降低成本、提高敏捷性并加速創(chuàng)新。

 

最多的功能
從計(jì)算、存儲和數(shù)據(jù)庫等基礎(chǔ)設(shè)施技術(shù),到機(jī)器學(xué)習(xí)、人工智能、數(shù)據(jù)湖和分析以及物聯(lián)網(wǎng)等新興技術(shù),AWS 提供的服務(wù)以及其中的功能比其他任何云服務(wù)提供商的都要多得多。這使得將現(xiàn)有應(yīng)用程序遷移到云中并構(gòu)建您可以想象的幾乎任何東西都變得更快、更容易且更具成本效益。

AWS 的這些服務(wù)還具有最為多樣復(fù)雜的功能。例如,AWS 提供了種類繁多的數(shù)據(jù)庫,這些數(shù)據(jù)庫是為不同類型的應(yīng)用程序?qū)iT構(gòu)建的,因此您可以選擇適合作業(yè)的工具來獲得最佳的成本和性能。

 

最大的客戶和合作伙伴社區(qū)
AWS 擁有最大且最具活力的社區(qū),在全球擁有數(shù)百萬活躍客戶和成千上萬個合作伙伴。幾乎所有行業(yè)和規(guī)模的客戶(包括初創(chuàng)公司、企業(yè)和公共部門組織)都在 AWS 上運(yùn)行所有可能的使用案例。AWS 合作伙伴網(wǎng)絡(luò) (APN) 包括專注于 AWS 服務(wù)的數(shù)千個系統(tǒng)集成商和成千上萬個將其技術(shù)應(yīng)用到 AWS 中的獨(dú)立軟件供應(yīng)商 (ISV)。

 

最安全
AWS 旨在成為當(dāng)今市場上最靈活、最安全的云計(jì)算環(huán)境。我們的核心基礎(chǔ)設(shè)施是為了滿足軍事、全球的銀行和其他高度敏感性組織的安全要求而構(gòu)建。一組深度云安全工具對此提供支持,其中包括超過 300 項(xiàng)安全、合規(guī)性和監(jiān)管服務(wù)及功能,以及對 143 項(xiàng)安全標(biāo)準(zhǔn)和合規(guī)性認(rèn)證的支持。

 

最快的創(chuàng)新速度
借助 AWS,您可以利用最新技術(shù)更快地進(jìn)行實(shí)驗(yàn)和創(chuàng)新。我們將不斷加快創(chuàng)新步伐,以發(fā)明您可用于轉(zhuǎn)變業(yè)務(wù)的全新技術(shù)。例如,在 2014 年,AWS 通過推出 AWS Lambda 在無服務(wù)器計(jì)算領(lǐng)域開創(chuàng)了先河,該平臺使開發(fā)人員無需預(yù)置或管理服務(wù)器即可運(yùn)行其代碼。AWS 構(gòu)建了 Amazon SageMaker,這是一種完全托管的機(jī)器學(xué)習(xí)服務(wù),可讓日常開發(fā)人員和科學(xué)家無需任何前置經(jīng)驗(yàn)即可運(yùn)用機(jī)器學(xué)習(xí)。

 

最成熟的運(yùn)營專業(yè)能力
AWS 具有無與倫比的經(jīng)驗(yàn)、成熟度、可靠性、安全性和性能,您可以將其用于最重要的應(yīng)用程序。在超過 17 年的時間中,AWS 一直在為運(yùn)行各種使用案例的全球數(shù)百萬客戶提供云服務(wù)。在所有云服務(wù)提供商中,AWS 擁有最豐富的大規(guī)模運(yùn)營經(jīng)驗(yàn)。

 

AWS 區(qū)域的全球網(wǎng)絡(luò)
AWS 擁有覆蓋范圍領(lǐng)先的全球云基礎(chǔ)設(shè)施。Gartner 已將 AWS 區(qū)域/可用區(qū)模型
視為一種值得推薦運(yùn)行方式,適用于要求高可用性的企業(yè)應(yīng)用程序。

<
最可能同場景使用的其他API
>
API接口列表
<
使用指南
>

Amazon Cognito API 開發(fā)指南

簡介

Amazon Cognito 是一種用于用戶身份驗(yàn)證和訪問控制的服務(wù)。它使開發(fā)者能夠輕松地添加用戶注冊、登錄和訪問控制功能到他們的應(yīng)用程序中。

準(zhǔn)備工作

注冊 AWS 賬戶

  1. 打開 AWS 注冊頁面
  2. 按照在線說明進(jìn)行操作,完成注冊。
  3. 注冊過程中,您需要接聽電話并輸入驗(yàn)證碼。
  4. 注冊完成后,您將收到一封確認(rèn)電子郵件。

創(chuàng)建具有管理權(quán)限的用戶

  1. 登錄 AWS 管理控制臺,使用您的根用戶憑證。
  2. 為根用戶啟用多重身份驗(yàn)證 (MFA)。
  3. 啟用 AWS IAM Identity Center。
  4. 在 IAM 身份中心中,創(chuàng)建一個具有管理權(quán)限的用戶。

Amazon Cognito 概述

用戶池

用戶池是一個用戶目錄,您可以使用它來管理用戶注冊和登錄。用戶池提供以下功能:

  • 用戶注冊和登錄
  • 密碼恢復(fù)
  • 用戶屬性管理

身份池

身份池允許您為用戶提供 AWS 資源的臨時訪問權(quán)限。您可以使用身份池實(shí)現(xiàn)以下功能:

  • 社交身份提供商(如 Facebook、Google)的身份驗(yàn)證
  • 匿名身份驗(yàn)證
  • AWS 資源訪問權(quán)限控制

API 參考

用戶池 API

  • CreateUserPool: 創(chuàng)建一個新的用戶池。
  • AdminCreateUser: 在用戶池中創(chuàng)建一個新用戶。
  • AdminInitiateAuth: 使用管理員權(quán)限對用戶進(jìn)行身份驗(yàn)證。
  • ConfirmSignUp: 確認(rèn)用戶注冊。

身份池 API

  • CreateIdentityPool: 創(chuàng)建一個新的身份池。
  • GetId: 獲取身份池的身份 ID。
  • GetCredentialsForIdentity: 獲取與身份相關(guān)的臨時 AWS 憑證。
  • ListIdentities: 列出身份池中的所有身份。

安全最佳實(shí)踐

  1. 使用多重身份驗(yàn)證 (MFA): 為用戶啟用 MFA,以增加安全性。
  2. 遵循最小權(quán)限原則: 為用戶分配最小的權(quán)限集,以減少潛在的安全風(fēng)險(xiǎn)。
  3. 定期審計(jì)權(quán)限: 定期檢查和更新用戶權(quán)限,確保符合安全政策。

示例代碼

以下是一個使用 AWS SDK for JavaScript 的示例代碼,演示如何創(chuàng)建用戶池:

const AWS = require('aws-sdk');
const cognito = new AWS.CognitoIdentityServiceProvider();

const params = {
  PoolName: 'MyUserPool',
  AliasAttributes: ['email'],
  AutoVerifiedAttributes: ['email']
};

cognito.createUserPool(params, (err, data) => {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

常見問題

  1. 如何重置用戶密碼?
    • 您可以使用 ForgotPassword API 來重置用戶密碼。
  1. 如何處理用戶登錄失?。?/span>
    • 使用 AdminInitiateAuth API,您可以獲取錯誤代碼并根據(jù)錯誤類型提供適當(dāng)?shù)姆答仭?/span>
  1. 如何管理用戶屬性?
    • 使用 AdminUpdateUserAttributes API 更新用戶屬性。

通過遵循本指南,您可以有效地使用 Amazon Cognito 來管理用戶身份驗(yàn)證和訪問控制。

 

詳情查看鏈接:https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-getting-started-account-iam.html

<
依賴服務(wù)
>
<
產(chǎn)品問答
>
?
什么是 Amazon Cognito?
借助 Amazon Cognito,您可以在幾分鐘內(nèi)將用戶注冊、登錄、訪問控制和代理的 AWS 服務(wù)訪問權(quán)限添加到您的 Web 應(yīng)用程序和移動應(yīng)用程序中。它是一項(xiàng)以開發(fā)人員為中心且經(jīng)濟(jì)高效的服務(wù),可提供安全、基于租戶并能夠擴(kuò)展到數(shù)百萬用戶的身份存儲和聯(lián)合身份驗(yàn)證選項(xiàng)。Amazon Cognito 可以幫助您創(chuàng)建品牌客戶體驗(yàn)、提高安全性并適應(yīng)您客戶的需求。例如,它支持通過社交身份提供商進(jìn)行登錄,以及使用 WebAuthn 通行密鑰或者短信和電子郵件一次性密碼進(jìn)行無密碼登錄。Amazon Cognito 支持多種合規(guī)性標(biāo)準(zhǔn),按照開放身份標(biāo)準(zhǔn)運(yùn)行,并與大量的開發(fā)資源和軟件開發(fā)工具包庫集成。 借助 Amazon Cognito,您可以專注于創(chuàng)建卓越的應(yīng)用程序體驗(yàn),而不用擔(dān)心如何構(gòu)建、保護(hù)和擴(kuò)展解決方案以進(jìn)行用戶管理和身份驗(yàn)證。
?
如何開始使用 Amazon Cognito?
您可以訪問 AWS 管理控制臺,以輕松開始使用這項(xiàng)服務(wù)。如果您沒有 Amazon Web Services 賬戶,可以在登錄控制臺時創(chuàng)建一個。創(chuàng)建用來管理用戶的用戶池或用于聯(lián)合身份的身份池之后,即可將您的應(yīng)用程序和 API 與 OAuth 和 OpenID Connect(OIDC)集成。
?
誰應(yīng)該使用 Amazon Cognito?
Amazon Cognito 是專為想要將用戶管理和同步功能添加到其移動和 Web 應(yīng)用程序的開發(fā)人員設(shè)計(jì)的。開發(fā)人員可以使用 Cognito Identity 將注冊和登錄功能添加到他們的應(yīng)用程序,以便用戶能夠安全訪問其應(yīng)用程序的資源。Cognito 還使得開發(fā)人員能夠跨設(shè)備、平臺和應(yīng)用程序同步數(shù)據(jù)。
?
Amazon Cognito 是否會公開服務(wù)器端 API?
符合。Cognito 會公開服務(wù)器端 API。您可以直接調(diào)用這些 API 來創(chuàng)建您自己的連接至 Cognito 的自定義接口。服務(wù)器端 API 在《開發(fā)人員指南》中予以說明。
?
Amazon Cognito 支持哪些平臺?
選配的 AWS 移動開發(fā)工具包中包含對 Cognito 的支持,目前支持的平臺有 iOS、Android、Unity 和 Kindle Fire。還可以在適用于 .NET、C++、Go、Java、JavaScript、PHP v3、Python、Ruby v3 的 AWS SDK 以及命令行界面中使用 Cognito。
?
可不可以使用 AWS Mobile SDK?
不可以。Cognito 會以 Web 服務(wù)的形式公開其控制和數(shù)據(jù) API。您可以使用自己的客戶端庫來直接調(diào)用服務(wù)器端 API。
?
Amazon Cognito 支持哪些形式的身份驗(yàn)證?
對于第一要素身份驗(yàn)證器,Amazon Cognito 支持用戶名/密碼、電子郵件 OTP 無密碼、短信 OTP 無密碼和 WebAuthn 通行密鑰。Cognito 支持以下多重身份驗(yàn)證器(MFA):電子郵件 OTP、短信 OTP 和 TOTP 身份驗(yàn)證器。此外,客戶和合作伙伴還可以使用 AWS Lambda 擴(kuò)展,通過自定義身份驗(yàn)證流程實(shí)現(xiàn)對第三方產(chǎn)品和定制身份驗(yàn)證器的支持。
?
我能否使用自己的身份提供商來支持用戶注冊和登錄功能?
可以。借助 Amazon Cognito,您可以輕松且安全地將注冊和登錄功能添加到您的應(yīng)用程序中。您的用戶可以使用電子郵件、手機(jī)號碼或用戶名進(jìn)行注冊和登錄。您也可以實(shí)現(xiàn)增強(qiáng)型安全功能,例如電子郵件驗(yàn)證、電話號碼驗(yàn)證和多重驗(yàn)證。借助 Cognito,您可以自定義工作流,例如為用戶注冊功能添加特定于應(yīng)用程序的邏輯,以通過 AWS Lambda 進(jìn)行欺詐檢測和用戶驗(yàn)證。要了解更多信息,請?jiān)L問我們的文檔。
?
什么是 Amazon Cognito 用戶池?
用戶池是一個基于租戶的用戶目錄,您可以為您的 Web 應(yīng)用程序和移動應(yīng)用程序配置此目錄。用戶池可以安全地存儲用戶的資料屬性,并支持自定義架構(gòu)。您可以使用 AWS 管理控制臺、AWS CLI 或 AWS 開發(fā)工具包創(chuàng)建和管理用戶群體。
?
我能否驗(yàn)證用戶在注冊應(yīng)用程序時使用的電子郵件地址和電話號碼?
能。借助 Amazon Cognito,您可以要求驗(yàn)證用戶的電子郵件地址和電話號碼,然后再向其提供對您應(yīng)用程序的訪問權(quán)限。在注冊過程中,系統(tǒng)將向用戶的電話號碼或電子郵件地址發(fā)送驗(yàn)證碼,用戶必須輸入該驗(yàn)證碼才能完成注冊并得到確認(rèn)。
<
關(guān)于我們
>
亞馬遜云科技(Amazon Web Services,簡稱AWS)是全球領(lǐng)先的云計(jì)算服務(wù)提供商,提供包括計(jì)算、存儲、數(shù)據(jù)庫、分析、機(jī)器學(xué)習(xí)、物聯(lián)網(wǎng)、移動、安全、混合云、虛擬和增強(qiáng)現(xiàn)實(shí)等在內(nèi)的廣泛服務(wù)。AWS在全球34個地理區(qū)域內(nèi)運(yùn)營108個可用區(qū),服務(wù)超過200個國家和地區(qū),幫助企業(yè)、開發(fā)者和政府機(jī)構(gòu)構(gòu)建靈活、可靠、可擴(kuò)展的云基礎(chǔ)設(shè)施。作為亞馬遜公司的一部分,AWS致力于提供創(chuàng)新的云解決方案,支持客戶實(shí)現(xiàn)數(shù)字化轉(zhuǎn)型。
聯(lián)系信息
服務(wù)時間: 早9:00-晚8:00 (法定假期除外)
電話號碼: +86 (10) 1010 0866
網(wǎng)頁在線客服: 咨詢

AWS 云計(jì)算

Amazon Web Services(AWS)是全球最全面、應(yīng)用最廣泛的云,從全球數(shù)據(jù)中心提供超過 200 項(xiàng)功能齊全的服務(wù)。數(shù)百萬客戶(包括增長最快速的初創(chuàng)公司、最大型企業(yè)和主要的政府機(jī)構(gòu))都在使用 AWS 來降低成本、提高敏捷性并加速創(chuàng)新。

 

最多的功能
從計(jì)算、存儲和數(shù)據(jù)庫等基礎(chǔ)設(shè)施技術(shù),到機(jī)器學(xué)習(xí)、人工智能、數(shù)據(jù)湖和分析以及物聯(lián)網(wǎng)等新興技術(shù),AWS 提供的服務(wù)以及其中的功能比其他任何云服務(wù)提供商的都要多得多。這使得將現(xiàn)有應(yīng)用程序遷移到云中并構(gòu)建您可以想象的幾乎任何東西都變得更快、更容易且更具成本效益。

AWS 的這些服務(wù)還具有最為多樣復(fù)雜的功能。例如,AWS 提供了種類繁多的數(shù)據(jù)庫,這些數(shù)據(jù)庫是為不同類型的應(yīng)用程序?qū)iT構(gòu)建的,因此您可以選擇適合作業(yè)的工具來獲得最佳的成本和性能。

 

最大的客戶和合作伙伴社區(qū)
AWS 擁有最大且最具活力的社區(qū),在全球擁有數(shù)百萬活躍客戶和成千上萬個合作伙伴。幾乎所有行業(yè)和規(guī)模的客戶(包括初創(chuàng)公司、企業(yè)和公共部門組織)都在 AWS 上運(yùn)行所有可能的使用案例。AWS 合作伙伴網(wǎng)絡(luò) (APN) 包括專注于 AWS 服務(wù)的數(shù)千個系統(tǒng)集成商和成千上萬個將其技術(shù)應(yīng)用到 AWS 中的獨(dú)立軟件供應(yīng)商 (ISV)。

 

最安全
AWS 旨在成為當(dāng)今市場上最靈活、最安全的云計(jì)算環(huán)境。我們的核心基礎(chǔ)設(shè)施是為了滿足軍事、全球的銀行和其他高度敏感性組織的安全要求而構(gòu)建。一組深度云安全工具對此提供支持,其中包括超過 300 項(xiàng)安全、合規(guī)性和監(jiān)管服務(wù)及功能,以及對 143 項(xiàng)安全標(biāo)準(zhǔn)和合規(guī)性認(rèn)證的支持。

 

最快的創(chuàng)新速度
借助 AWS,您可以利用最新技術(shù)更快地進(jìn)行實(shí)驗(yàn)和創(chuàng)新。我們將不斷加快創(chuàng)新步伐,以發(fā)明您可用于轉(zhuǎn)變業(yè)務(wù)的全新技術(shù)。例如,在 2014 年,AWS 通過推出 AWS Lambda 在無服務(wù)器計(jì)算領(lǐng)域開創(chuàng)了先河,該平臺使開發(fā)人員無需預(yù)置或管理服務(wù)器即可運(yùn)行其代碼。AWS 構(gòu)建了 Amazon SageMaker,這是一種完全托管的機(jī)器學(xué)習(xí)服務(wù),可讓日常開發(fā)人員和科學(xué)家無需任何前置經(jīng)驗(yàn)即可運(yùn)用機(jī)器學(xué)習(xí)。

 

最成熟的運(yùn)營專業(yè)能力
AWS 具有無與倫比的經(jīng)驗(yàn)、成熟度、可靠性、安全性和性能,您可以將其用于最重要的應(yīng)用程序。在超過 17 年的時間中,AWS 一直在為運(yùn)行各種使用案例的全球數(shù)百萬客戶提供云服務(wù)。在所有云服務(wù)提供商中,AWS 擁有最豐富的大規(guī)模運(yùn)營經(jīng)驗(yàn)。

 

AWS 區(qū)域的全球網(wǎng)絡(luò)
AWS 擁有覆蓋范圍領(lǐng)先的全球云基礎(chǔ)設(shè)施。Gartner 已將 AWS 區(qū)域/可用區(qū)模型
視為一種值得推薦運(yùn)行方式,適用于要求高可用性的企業(yè)應(yīng)用程序。

<
合作案例
>
engie ascender caratlane
<
最可能同場景使用的其他API
>