Cognito-sovelluksen integrointi sosiaaliseen kirjautumiseen

( Ryan Bui) (16. joulukuuta 2020)

kirjoittanut Ryan Bui, Javascript-kehittäjä

Jos haluat integroida sosiaalisen kirjautumisen manuaalisesti Cognito-sovelluksella sovelluksellesi, olen tullut oikeaan paikkaan! En voinut integroida sosiaalista kirjautumista siihen, mitä Cognito tarjoaa. Tämä johtui siitä, että käyttöliittymä ei voinut integroitua Amplify- tai Cognito-käyttäjäpooleihin helposti Flutterin käytön vuoksi. Flutter on tällä hetkellä liian nuori integroitumaan noihin palveluihin.

En myöskään halunnut luoda henkilöllisyyspoolia väliaikaisten AWS-tunnistetietojen myöntämiseksi käyttöliittymälle. Tämän ongelman ratkaisemiseksi otimme käyttöön / auth-päätepisteen, joka kirjautuu / kirjautuu Cognitoon ohjelmallisesti. Käyttäjät puolestaan ​​saavat todennustunnuksia.

Käyttäjien on lähetettävä omat sosiaaliset tunnuksensa Googlelta, Facebookilta tai Applelta. Näiden tunnusten vahvistus tehdään taustasta.

Rekisteröityminen

Tarvitsemme CognitoIdentityServiceProvider-kirjaston käyttöä ja anna tarvittavat tunnistetiedot ja määritteet, jotka haluamme määrittää käyttäjälle (sähköposti, nimi jne.). Nämä määritteet on vaadittava, kun pooli luodaan (esimerkki alla).

Tarvitsemme vastineeksi juuri luomamme käyttäjätunnuksen.

Kirjaudu

Sisäänkirjautumisen yhteydessä meidän on annettava käyttäjänimi ja salasana. Halutessasi voit kirjautua sisään vain sähköpostilla. onnistumisen jälkeen tarvitsemme idTokenin, jota käytetään myöhemmin, kun valtuutetaan käyttäjän kutsuja sovellusliittymällemme.

Saapuvien pyyntöjen valtuuttaminen

Valtuuttajat voidaan määrittää kahdella tavalla. Jos teemme sen manuaalisesti, meidän on avattava AWS-konsoli ja siirryttävä API-yhdyskäytäväpalveluun ja luotava valtuuttaja sovellusliittymään.

Seuraava vaihe, anna nimi tekijälle ja valitse haluamasi Cognito-käyttäjäpool. Valitse menetelmä, jossa haluat käyttää valtuuttajaa, ja linkitä menetelmä autorisaattoriin napsauttamalla ”Method Request”.

Valitse ensin valtuuttaja valtuutuksessa. Valitse OAuth-laajuuksille EI OLE odottaa ID-tunnuksia. Jos haluat käyttää käyttöoikeustunnuksia laajuuksilla, voit seurata AWS: n ohjeita .

Joten kaikki mitä sinun tarvitsee tehdä manuaalista käyttöä varten kokoonpano! Jos haluat automatisoida sen palvelimettomasti, voit tehdä sen seuraavasti:

Tässä me vain täytyy antaa käyttäjäryhmän ARN. Emme halua tallentaa tunnuksia välimuistiin, minkä vuoksi käytämme resultTtlInSeconds: 0 . Laita identiteettilähteeksi polku valtuutusotsikkoon.

Nyt tämän sovellusliittymän kuluttajan on vain siirrettävä Cognito ID -tunnus valtuutusotsakkeeseen.

Nopea yhteenveto…

Cognito ei integroitu hyvin Flutteriin. Käytimme AWS SDK: ta kirjautumiseen ja kirjautumiseen. Tällöin voimme luoda tunnuksia, jotka välitämme takaisin asiakkaalle. Näitä tunnuksia käytetään validointiin API-yhdyskäytävän valtuuttajiin nähden.

Erityiset kiitokset tämän artikkelin yhdessä kirjoittamisesta. Katso hänen opetusohjelmansa aiheesta:
(Kuinka määrittää AWS) reitillä 53 & (S3-staattisen verkkosivuston välityspalvelin)

Ryan on Javascript-kehittäjä, joka on tehnyt tiivistä yhteistyötä TDD: n ja BDD: n kanssa. Hän nauttii videopelien ja kitaran pelaamisesta.

TribalScale on globaali innovaatioyritys, joka auttaa yrityksiä sopeutua ja menestyä digitaalisella aikakaudella. Muutamme tiimejä ja prosesseja, rakennamme luokkansa parhaita digitaalisia tuotteita ja luomme häiritseviä startup-yrityksiä. Lisätietoja meistä verkkosivustollamme . Ota yhteyttä meihin Twitter , LinkedIn & Facebook !

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *