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

文章推薦指數: 80 %
投票人數:10人

您可以定義角色並將使用者對應到不同角色,如此一來,您的應用程式可以只存取授權每位使用者的資源。

或者,您可以在AWS Identity and Access Management 許可政策中使用 ... AmazonCognito 簡單、安全的使用者註冊、登入和存取控制 立即註冊 AmazonCognito可讓您輕鬆快速地將使用者註冊、登入和存取控制新增到Web和行動應用程式。

AmazonCognito可擴展到數百萬名使用者,且支援以社交身分供應商(如Apple、Facebook、Google和Amazon)以及透過SAML2.0與OpenIDConnect以企業身分供應商進行登入。

  50,000個作用中使用者免費 (使用AWS免費方案的每個月) 免費試用» 將您的時間用來建立出色的應用程式。

讓AmazonCognito處理身分驗證。

安全且可擴展的身分存放區 AmazonCognito使用者集區提供安全的身分存放區,可擴展至數百萬個使用者。

Cognito使用者集區可以更輕鬆地設定,而無需佈建任何基礎設施,使用者集區的所有成員都具一個可以透過軟體開發套件(SDK)管理的目錄描述檔。

閱讀更多有關Cognito使用者集區的資訊   社交與企業聯合身分 有了AmazonCognito,您的使用者可透過社交身分供應商(例如Apple、Google、Facebook和Amazon)以及透過企業身分供應商(例如 SAML 和OpenIDConnect)進行登入。

請參閱更多有關聯合的資訊   標準身份驗證 AmazonCognito使用者集區是標準身分供應商,它支援IdentityandAccessManagement標準,如OAuth2.0、SAML2.0和OpenIDConnect。

請參閱更多有關標準身分驗證的資訊   應用程式和使用者的安全 AmazonCognito支援多重驗證以及靜態資料和傳輸中資料的加密。

AmazonCognito符合HIPAA規範,且符合PCIDSS、SOC、ISO/IEC27001、ISO/IEC27017、ISO/IEC27018和ISO9001標準。

閱讀其他有關安全與合規的資訊   AWS資源的存取控制 AmazonCognito提供可從應用程式控制AWS資源存取的解決方案。

您可以定義角色並將使用者對應到不同角色,如此一來,您的應用程式可以只存取授權每位使用者的資源。

或者,您可以在AWSIdentityandAccessManagement許可政策中使用身分供應商提供的屬性,從而控制滿足特定屬性條件的使用者對資源的存取。

請參閱更多有關控制AWS資源存取的資訊 輕鬆與您的應用程式整合 透過內建UI以及聯合身分供應商的簡單組態,您可以整合AmazonCognito,在最短時間內將使用者登入、註冊和存取控制新增到應用程式。

您可以自訂UI,將公司品牌放在前面和中央,以便與所有使用者互動。

查看如何快速地將AmazonCognito與應用程式整合   就是這麼簡單 iOSObjectiveC Android iOSSwift ReactNative Web應用程式 iOSObjectiveC 使用軟體開發套件與幾行程式碼登入使用者和取回字符。

//iOSObjective-C //AppDelegate.m -(BOOL)application:(UIApplication*)appopenURL:(NSURL*)urloptions:(NSDictionary*)options{ return[[AWSCognitoAuthdefaultCognitoAuth]application:appopenURL:urloptions:options]; } //ViewController.m AWSCognitoAuth*cognitoAuth=[AWSCognitoAuthdefaultCognitoAuth]; [cognitoAuthgetSession:selfcompletion:^(AWSCognitoAuthUserSession*_Nullablesession,NSError*_Nullableerror){ if(error){ NSLog(@"Error:%@",error.userInfo[@"error"]); }else{ //Dosomethingwithsession NSLog(@"Claims:%@",t.result.idToken.claims); } }]; Android 使用軟體開發套件與幾行程式碼登入使用者和取回字符。

//Android //1)--CreateaninstanceofAuth-- Auth.Builderbuilder=newAuth.Builder() .setAppClientId(getString(R.string.cognito_client_id)); .setAppCognitoWebDomain(getString(R.string.cognito_web_domain)); .setApplicationContext(getApplicationContext()); .setAuthHandler(newcallback()); .setSignInRedirect(getString(R.string.app_redirect_signin)); .setSignOutRedirect(getString(R.string.app_redirect_signout)); .setScopes(userScopes); auth=builder.build(); //2)–Setupurlredirectinyourappmanifest-- //3)--Gettokensforyouruser-- auth.getSession(); iOSSwift 使用軟體開發套件與幾行程式碼登入使用者和取回字符。

//iOSSwift //AppDelegate.swift funcapplication(_app:UIApplication,openurl:URL,options:[UIApplicationOpenURLOptionsKey:Any]=[:])->Bool{ returnAWSCognitoAuth.default().application(app,open:url,options:options) } //ViewController.swift letcognitoAuth=AWSCognitoAuth.default() cognitoAuth.getSession(self){(session:AWSCognitoAuthUserSession?,error:Error?)in if(error!=nil){ print((error!asNSError).userInfo["error"]as?String) }else{ //Dosomethingwithsession } } ReactNative 使用軟體開發套件與幾行程式碼登入使用者和取回字符。

//Add'aws-amplify'and'aws-amplify-react-native'librariesintoyourapplication //ConfigureAuthcategorywithyourAmazonCognitocredentials Amplify.configure({ Auth:{ identityPoolId:'XX-XXXX-X:XXXXXXXX-XXXX',//AmazonCognitoIdentityPoolID region:'XX-XXXX-X',//AmazonCognitoRegion } }); //ThewithAuthenticatorcomponentaddsSignUpandSignIncapabilitiestoyourapp exportdefaultwithAuthenticator(classAppextendsReact.Component{ //...yourmaincomponent }); Web應用程式 使用軟體開發套件與幾行程式碼登入使用者和取回字符。

//Add'aws-amplify'libraryintoyourapplication //ConfigureAuthcategorywithyourAmazonCognitocredentials Amplify.configure({ Auth:{ identityPoolId:'XX-XXXX-X:XXXXXXXX-XXXX',//AmazonCognitoIdentityPoolID region:'XX-XXXX-X',//AmazonCognitoRegion } }); //CallAuth.signInwithusercredentials Auth.signIn(username,password) .then(user=>console.log(user)) .catch(err=>console.log(err)); 受開發人員信任 按使用量付費。

無最低費用。

如果您使用AmazonCognitoIdentity建立使用者集區,則只需要按照每月作用中使用者(MAU)付費。

如果日曆月內有相關的使用者身分操作(例如註冊、登入、字符重新整理、密碼變更或使用者帳戶屬性更新),則該使用者會視為一個MAU。

您無須為該日曆月中的後續工作階段或非作用中使用者付費。

您無須為該日曆月中的後續工作階段或非作用中使用者付費。

定價方案(MAU) 每個MAU的價格 第一個50,000 免費 下一個50,000 0.00550USD 下一個900,000 0.00460USD 下一個9,000,000 0.00325USD 超過10,000,000 0.00250USD 透過SAML或OIDC聯合身分登入的使用者,超過50個MAU免費方案的MAU價格是0.015USD/MAU。

 AmazonCognito對於使用聯合身分功能取得驗證使用者或訪客使用者的AWS登入資料一律不收取費用。

請在這裡參閱更多我們的定價。

查閱產品功能 進一步了解如何新增使用者註冊和登入資訊,以及為Web與行動應用程式新增存取控制。

進一步了解  註冊免費帳戶 立即存取AWS免費方案。

  註冊  開始在主控台進行建置 開始在AWS管理主控台使用AmazonCognito進行建置。

登入  結束對InternetExplorer的支援 知道了 AWS對InternetExplorer的支援將於07/31/2022結束。

支援的瀏覽器包括Chrome、Firefox、Edge和Safari。

進一步了解 知道了



請為這篇文章評分?