Fremskynd dine identitetsbekræftelsesprojekter ved hjælp af AWS Amplify og Amazon Rekognition eksempelimplementeringer PlatoBlockchain Data Intelligence. Lodret søgning. Ai.

Accelerer dine identitetsbekræftelsesprojekter ved hjælp af eksempelimplementeringer fra AWS Amplify og Amazon Rekognition

Amazon-anerkendelse giver dig mulighed for at afbøde svigagtige angreb og minimere onboarding-friktion for legitime kunder gennem en strømlinet identitetsbekræftelsesproces. Dette kan resultere i øget kundetillid og sikkerhed. Nøglefunktionerne ved denne løsning omfatter:

  • Registrer en ny bruger ved hjælp af en selfie
  • Registrer en ny bruger efter face match mod et ID-kort og ID-kortdataudtræk
  • Godkend tilbagevendende bruger

Amazon Rekognition tilbyder præ-trænet ansigtsgenkendelse funktioner, som du hurtigt kan føje til dine brugerintroduktions- og autentificeringsarbejdsgange for at verificere tilmeldte brugeres identiteter online. Der kræves ingen maskinlæringsekspertise (ML) for at bruge denne tjeneste.

I en tidligere indlæg, beskrev vi en typisk identitetsbekræftelsesworkflow og viste dig, hvordan du opbygger en identitetsbekræftelsesløsning ved hjælp af forskellige Amazon Rekognition API'er. I dette indlæg har vi tilføjet en ansigtsidentitetsbaseret autentificeringsbrugergrænseflade for at vise en komplet end-to-end identitetsbekræftelsesløsning. Vi leverer en komplet prøveimplementering i vores GitHub repository.

Løsningsoversigt

Følgende referencearkitektur viser, hvordan du kan bruge Amazon Rekognition sammen med andre AWS-tjenester til at implementere identitetsbekræftelse.

Arkitekturen omfatter følgende komponenter:

  1. Brugere får adgang til front-end-webportalen, der er hostet i AWS Amplify Amplify er en end-to-end-løsning, der gør det muligt for front-end-webudviklere at bygge og implementere sikre, skalerbare full-stack-applikationer.
  2. Ansøgninger påberåber sig Amazon API Gateway at dirigere anmodninger til den rigtige AWS Lambda funktion afhængig af brugerflowet. Der er fire hovedhandlinger i denne løsning: godkende, registrere, registrere med ID-kort og opdatere.
  3. API Gateway bruger en tjenesteintegration til at køre AWS-trinfunktioner eksprestilstandsmaskine svarende til det specifikke slutpunkt kaldet fra API Gateway. Inden for hvert trin er Lambda-funktioner ansvarlige for at udløse det korrekte sæt af opkald til og fra Amazon DynamoDB , Amazon Simple Storage Service (Amazon S3), sammen med de relevante Amazon Rekognition API'er.
  4. DynamoDB har ansigts-id'er (face-id), S3-sti-URI'er og unikke id'er (for eksempel medarbejder-id-nummer) for hver face-id. Amazon S3 gemmer alle ansigtsbilleder.
  5. Den sidste store komponent i løsningen er Amazon Rekognition. Hvert flow (godkend, registrer, registrer med ID-kort og opdatering) kalder forskellige Amazon Rekognition API'er afhængigt af opgaven.

Før vi implementerer løsningen, er det vigtigt at kende følgende begreber og API-beskrivelser:

  • Kollektioner – Amazon Rekognition gemmer information om opdagede ansigter i server-side containere kendt som samlinger. Du kan bruge de ansigtsoplysninger, der er gemt i en samling, til at søge efter kendte ansigter i billeder, lagrede videoer og streamingvideoer. Du kan bruge samlinger i en række forskellige scenarier. For eksempel kan du oprette en ansigtssamling til at gemme scannede badgebilleder ved at bruge Indeksansigter Når en medarbejder træder ind i bygningen, kan et billede af medarbejderens ansigt blive fanget og sendt til SearchFacesByImage operation. Hvis ansigtsmatchen giver en tilstrækkelig høj lighedsscore (f.eks. 99 %), kan du autentificere medarbejderen.
  • DetectFaces API – Denne API registrerer ansigter i et billede, der leveres som input, og returnerer oplysninger om ansigter. I en brugerregistreringsarbejdsgang kan denne handling hjælpe dig med at screene billeder, før du går videre til næste trin. For eksempel kan du kontrollere, om et billede indeholder et ansigt, om den identificerede person er i den rigtige retning, og om de ikke har en ansigtsblokering på, såsom solbriller eller en kasket.
  • IndexFaces API – Denne API registrerer ansigter i inputbilledet og føjer dem til den angivne samling. Denne handling bruges til at tilføje et screenet billede til en samling til fremtidige forespørgsler.
  • SearchFacesByImage API – For et givet inputbillede registrerer API'en først det største ansigt i billedet og søger derefter i den angivne samling efter matchende ansigter. Operationen sammenligner funktionerne i input-ansigtet med ansigtstræk i den angivne samling.
  • Sammenlign Faces API – Denne API sammenligner et ansigt i kildeinputbilledet med hver af de 100 største ansigter, der er registreret i målinputbilledet. Hvis kildebilledet indeholder flere ansigter, registrerer tjenesten det største ansigt og sammenligner det med hvert ansigt, der er registreret i målbilledet. Til vores brug forventer vi, at både kilde- og målbilledet indeholder et enkelt ansigt.
  • DeleteFaces API – Denne API sletter ansigter fra en samling. Du angiver et samlings-id og en række ansigts-id'er, der skal fjernes.

Arbejdsgange

Løsningen giver et eksempel på arbejdsgange for at muliggøre brugerregistrering, godkendelse og opdateringer af brugerprofilbilledet. Vi detaljerer hver arbejdsgang i dette afsnit.

Registrer en ny bruger ved hjælp af en ansigtsselfie

Følgende figur viser arbejdsgangen for en ny brugerregistrering. Typiske trin i denne proces er:

  1. En bruger tager et selfie-billede.
  2. Der udføres et kvalitetstjek af selfie-billedet.
    Bemærk: Der kan også udføres en liveness-detektionskontrol efter dette trin. For flere detaljer, læs venligst dette blog.
  3. Selfien tjekkes mod en database med eksisterende brugeransigter.

Fremskynd dine identitetsbekræftelsesprojekter ved hjælp af AWS Amplify og Amazon Rekognition eksempelimplementeringer PlatoBlockchain Data Intelligence. Lodret søgning. Ai.

Følgende billede illustrerer arbejdsgangen Trinfunktioner for ny brugerregistrering.

Fremskynd dine identitetsbekræftelsesprojekter ved hjælp af AWS Amplify og Amazon Rekognition eksempelimplementeringer PlatoBlockchain Data Intelligence. Lodret søgning. Ai.

Tre funktioner kaldes i denne arbejdsgang: opdage-ansigter, søgeansigterog indeks-ansigter. Det opdage-ansigter funktionen kalder Amazon Rekognition DetectFaces API til at afgøre, om et ansigt er registreret i et billede og er brugbart. Nogle af kvalitetskontrollen omfatter at fastslå, at der kun er et ansigt på billedet, at sikre, at ansigtet ikke er skjult af solbriller eller en hat, og at bekræfte, at ansigtet ikke er roteret ved at bruge udgør dimension. Hvis billedet består kvalitetskontrollen, vil den søgeansigter funktion søger efter et eksisterende ansigtsmatch i Amazon Rekognition-samlingerne ved at bekræfte FaceMatchThreshold tillidsscore opfylder dit tærskelmål. For mere information, se Brug af lighedstærskler til at matche ansigter. Hvis ansigtsbilledet ikke findes i samlingerne, indeks-ansigter funktionen kaldes for at indeksere ansigtet i samlingerne. Ansigtsbilledets metadata gemmes i DynamoDB-tabellen, og ansigtsbillederne gemmes i en S3-bøtte.

Hvis den nye brugerregistrering lykkes, tilføjes ansigtsbilledets attributoplysninger i DynamoDB. Du kan tilpasse flowet efter forretningsprocessen. Det indeholder ofte nogle eller alle trinene, der er præsenteret i det foregående diagram. Du kan vælge at køre alle trinene synkront (vent til et trin er fuldført, før du går videre til næste trin). Alternativt kan du køre nogle af trinene asynkront (vent ikke på, at det trin er fuldført) for at fremskynde brugerregistreringsprocessen og forbedre kundeoplevelsen. Hvis trinene ikke lykkes, skal du rulle brugerregistreringen tilbage.

Registrer en ny bruger efter face match mod et ID-kort med ID-kortdataudtræk

Ud over brugerregistrering med billede giver denne arbejdsgang brugere mulighed for at registrere sig med et id-kort som kørekort. Trinene til at registrere en ny bruger med et ID-kort ligner trinnene for registrering af en ny bruger.

Fremskynd dine identitetsbekræftelsesprojekter ved hjælp af AWS Amplify og Amazon Rekognition eksempelimplementeringer PlatoBlockchain Data Intelligence. Lodret søgning. Ai.

Følgende billede illustrerer arbejdsgangen Trinfunktioner for ny brugerregistrering med ID.

Fremskynd dine identitetsbekræftelsesprojekter ved hjælp af AWS Amplify og Amazon Rekognition eksempelimplementeringer PlatoBlockchain Data Intelligence. Lodret søgning. Ai.

Fire funktioner kaldes i denne arbejdsgang:  opdage-ansigter, søgeansigter, indeks-ansigter , sammenligne-ansigter. Sekvensen af ​​operationer i denne arbejdsgang svarer til arbejdsgangen for brugerregistrering med tilføjelsen af sammenligne-ansigter. Efter at have verificeret kvaliteten af ​​selfie-billedet og sikret, at ansigtsbilledet ikke er til stede i samlingen, sammenligne-ansigter funktionen aktiveres for at bekræfte, at selfie-billedet matcher ansigtsbilledet på ID-kortet. Hvis billederne stemmer overens, udtrækkes de relevante egenskaber fra ID-kortet. Du kan udtrække nøgle-værdi-par fra identitetsdokumenter ved hjælp af den nyligt lancerede amazontekst AnalyzeID API (for amerikanske regioner) eller Amazon Rekognition DetectText API (ikke-amerikanske regioner og ikke-engelske sprog). De udtrukne egenskaber fra ID-kortet flettes sammen, og brugerens ansigt indekseres i samlingen via indeks-ansigter funktion.

Ansigtsbilledets metadata gemmes i DynamoDB-tabellen, og ansigtsbillederne gemmes i en S3-bøtte.

Hvis billederne ikke stemmer overens, eller der registreres en dubletregistrering, modtager brugeren en loginfejl. Loginfejl kan logges ved hjælp af en amazoncloudwatch hændelse, og handlinger kan udløses vha Amazon Simple Notification Service (Amazon SNS) for at underrette sikkerhedsoperationer til overvågning og sporing af mislykkede logins. For mere information, se Overvågning af Amazon SNS-emner ved hjælp af CloudWatch.

Godkend tilbagevendende bruger

Et andet almindeligt flow er et eksisterende eller tilbagevendende brugerlogin. I dette flow udføres en kontrol af brugerens ansigt (selfie) mod et tidligere registreret ansigt. Typiske trin i denne proces inkluderer brugeransigtsfangst (selfie), kontrol af selfie-billedkvaliteten og søgning og sammenligning af selfien mod ansigtsdatabasen. Følgende diagram viser et muligt flow.

Fremskynd dine identitetsbekræftelsesprojekter ved hjælp af AWS Amplify og Amazon Rekognition eksempelimplementeringer PlatoBlockchain Data Intelligence. Lodret søgning. Ai.

Følgende billede illustrerer arbejdsgangen til godkendelse af en eksisterende bruger.

Fremskynd dine identitetsbekræftelsesprojekter ved hjælp af AWS Amplify og Amazon Rekognition eksempelimplementeringer PlatoBlockchain Data Intelligence. Lodret søgning. Ai.

Denne trinfunktions arbejdsgang kalder tre funktioner: opdage-ansigter, sammenligne-ansigter , søgeansigter. Efter opdage-ansigter funktionen verificerer, at det optagne ansigtsbillede er gyldigt sammenligne-ansigter funktionen kontrollerer linket i DynamoDB-tabellen for et ansigtsbillede i S3-bøtten, der matcher en eksisterende bruger. Hvis der findes et match, godkendes brugeren. Hvis et match ikke findes, kaldes funktionen Søg ansigter til at søge efter ansigtsbilledet i samlingerne. Brugeren er verificeret, og godkendelsesprocessen afsluttes, hvis deres ansigtsbillede findes i samlingerne. Ellers nægtes brugerens adgang.

Forudsætninger

Inden du går i gang, skal du udfylde følgende forudsætninger:

  1. Opret en AWS-konto.
  2. Installer AWS kommandolinjegrænseflade (AWS CLI) version 2 på din lokale maskine. For instruktioner, se Installation eller opdatering af den seneste version af AWS CLI.
  3. Konfigurer AWS CLI.
  4. Installer Node.js på din lokale maskine.
  5. Klon prøverepoen på din lokale maskine:
git clone https://github.com/aws-samples/rekognition-identity-verification.git

Implementer løsningen

Vælg den relevante CloudFormation-stak for at klargøre løsningen på din AWS-konto i din foretrukne region. Denne løsning implementerer API Gateway integreret med Step Functions og Amazon Rekognition API'er til at køre identitetsbekræftelsesarbejdsgangene.

Ved at klikke på en af ​​følgende startknapper vil løsningen blive leveret til din AWS-konto i det pågældende område.

Start stak-knap  N. Virginia (us-east-1)

Fremskynd dine identitetsbekræftelsesprojekter ved hjælp af AWS Amplify og Amazon Rekognition eksempelimplementeringer PlatoBlockchain Data Intelligence. Lodret søgning. Ai.  Oregon (us-west-2)

Kør følgende trin på din lokale maskine for at implementere Front-end-applikationen:

cd rekognition-identity-verification 
./fe-deployment.sh

Start web-brugergrænsefladen

Webportalen er implementeret med Amplify. På Amplify-konsollen skal du finde det hostede webapplikationsmiljø og URL'en. Kopier URL'en og få adgang til den fra din browser.

Fremskynd dine identitetsbekræftelsesprojekter ved hjælp af AWS Amplify og Amazon Rekognition eksempelimplementeringer PlatoBlockchain Data Intelligence. Lodret søgning. Ai.

Registrer en ny bruger ved hjælp af en ansigtsselfie

Registrer dig selv som bruger med følgende trin:

  1. Åbn webadressen fra Amplify.
  2. Vælg Tilmeld
  3. Aktiver dit kamera, og tag et ansigtsbillede.
  4. Indtast dit brugernavn og detaljer.
  5. Vælg Tilmelde at registrere din konto.

Fremskynd dine identitetsbekræftelsesprojekter ved hjælp af AWS Amplify og Amazon Rekognition eksempelimplementeringer PlatoBlockchain Data Intelligence. Lodret søgning. Ai.

Godkend tilbagevendende bruger

Når du er registreret, logger du ind med ansigts-id'et som en godkendelsesmekanisme.

  1. Åbn web-URL'en fra Amplify
  2. Fang dit ansigts-id.
  3. Indtast dit bruger-id.
  4. Vælg Login.

Fremskynd dine identitetsbekræftelsesprojekter ved hjælp af AWS Amplify og Amazon Rekognition eksempelimplementeringer PlatoBlockchain Data Intelligence. Lodret søgning. Ai.

Du får en "Login vellykket" besked efter dit ansigts-id er bekræftet med registreringsbilledet.

Fremskynd dine identitetsbekræftelsesprojekter ved hjælp af AWS Amplify og Amazon Rekognition eksempelimplementeringer PlatoBlockchain Data Intelligence. Lodret søgning. Ai.

Registrer en ny bruger efter face match mod et ID-kort med ID-kortdataudtræk

For at teste brugerregistrering med et ID skal du udføre følgende trin:

  1. Åbn webadressen fra Amplify.
  2. Vælg Tilmeld dig med ID
  3. Aktiver dit kamera, og tag et ansigtsbillede.
  4. Træk og slip dit ID-kort
  5. Vælg Tilmeld.

Fremskynd dine identitetsbekræftelsesprojekter ved hjælp af AWS Amplify og Amazon Rekognition eksempelimplementeringer PlatoBlockchain Data Intelligence. Lodret søgning. Ai.

Følgende skærmbillede viser et eksempel. Applikationen understøtter ID-kortbilleder på op til 256 KB.

Fremskynd dine identitetsbekræftelsesprojekter ved hjælp af AWS Amplify og Amazon Rekognition eksempelimplementeringer PlatoBlockchain Data Intelligence. Lodret søgning. Ai.

Du modtager en "Successful Registered User"-meddelelse.

Fremskynd dine identitetsbekræftelsesprojekter ved hjælp af AWS Amplify og Amazon Rekognition eksempelimplementeringer PlatoBlockchain Data Intelligence. Lodret søgning. Ai.

Ryd op

For at forhindre, at der påløber yderligere gebyrer på din AWS-konto, skal du slette de ressourcer, du har klargjort ved at navigere til AWS CloudFormation-konsollen og slette Riv-Prod stak.

Sletning af stakken sletter ikke den S3-bøtte, du oprettede. Denne spand gemmer alle ansigtsbilleder. Hvis du vil slette S3-bøtten, skal du navigere til Amazon S3-konsollen, tømme bøtten og derefter bekræfte, at du vil slette den permanent.

Konklusion

Amazon Rekognition gør det nemt at tilføje billedanalyse til dine identitetsbekræftelsesapplikationer ved hjælp af gennemprøvet, meget skalerbar, deep learning-teknologi, der ikke kræver nogen ML-ekspertise at bruge. Amazon Anerkendelse giver ansigtsgenkendelse og sammenligning kapaciteter. Med en kombination af Opdag ansigter, Sammenlign ansigter, Indeksansigter, SearchFacesByImage, Opdag tekstAnalyseID, kan du implementere de almindelige flows omkring ny brugerregistrering og eksisterende brugerlogins.

Amazon Rekognition-samlinger giver en metode til at gemme oplysninger om opdagede ansigter i serverside-beholdere. Du kan derefter bruge de ansigtsoplysninger, der er gemt i en samling, til at søge efter kendte ansigter på billeder. Når du bruger samlinger, behøver du ikke gemme originale billeder, efter du har indekseret ansigter i samlingen. Amazon Rekognition-samlinger består ikke af faktiske billeder. I stedet registrerer den underliggende detektionsalgoritme ansigterne i inputbilledet, udtrækker ansigtstræk til en funktionsvektor for hvert ansigt og gemmer det i samlingen.

Besøg for at starte din rejse mod identitetsbekræftelse Identitetsbekræftelse ved hjælp af Amazon Rekognition.


Om forfatterne

Fremskynd dine identitetsbekræftelsesprojekter ved hjælp af AWS Amplify og Amazon Rekognition eksempelimplementeringer PlatoBlockchain Data Intelligence. Lodret søgning. Ai.Vineet Kacchawaha er Solutions Architect hos AWS med ekspertise i Machine Learning. Han er ansvarlig for at hjælpe kunder med at udforme skalerbare, sikre og omkostningseffektive arbejdsbelastninger på AWS.

Fremskynd dine identitetsbekræftelsesprojekter ved hjælp af AWS Amplify og Amazon Rekognition eksempelimplementeringer PlatoBlockchain Data Intelligence. Lodret søgning. Ai.Ramesh Thiagarajan er en Senior Solutions Architect baseret i San Francisco. Han har en bachelor i anvendt videnskab og en master i cybersikkerhed. Han har specialiseret sig i cloud-migrering, cloud-sikkerhed, compliance og risikostyring. Uden for arbejdet er han en passioneret gartner og har en ivrig interesse for ejendoms- og boligforbedringsprojekter.

Fremskynd dine identitetsbekræftelsesprojekter ved hjælp af AWS Amplify og Amazon Rekognition eksempelimplementeringer PlatoBlockchain Data Intelligence. Lodret søgning. Ai.Amit Gupta er AI Services Solutions Architect hos AWS. Han brænder for at give kunderne veldesignede maskinlæringsløsninger i stor skala.

Fremskynd dine identitetsbekræftelsesprojekter ved hjælp af AWS Amplify og Amazon Rekognition eksempelimplementeringer PlatoBlockchain Data Intelligence. Lodret søgning. Ai.Tim Murphy er en Senior Solutions Architect for AWS, der arbejder med virksomheders finansielle servicekunder, der bygger business cloud-centrerede løsninger. Han har brugt det sidste årti på at arbejde med startups, non-profitorganisationer, kommercielle virksomheder og statslige agenturer, hvor han har implementeret infrastruktur i stor skala. I sin fritid, når han ikke pille ved teknologi, vil du højst sandsynligt finde ham i fjerne områder af jorden, hvor han vandre bjerge, surfe på bølger eller cykle gennem en ny by.

Fremskynd dine identitetsbekræftelsesprojekter ved hjælp af AWS Amplify og Amazon Rekognition eksempelimplementeringer PlatoBlockchain Data Intelligence. Lodret søgning. Ai.Nate Bachmeier er en AWS Senior Solutions Architect, der nomadisk udforsker New York, én cloud-integration ad gangen. Han har specialiseret sig i migrering og modernisering af applikationer. Udover dette er Nate fuldtidsstuderende og har to børn.

Fremskynd dine identitetsbekræftelsesprojekter ved hjælp af AWS Amplify og Amazon Rekognition eksempelimplementeringer PlatoBlockchain Data Intelligence. Lodret søgning. Ai.Jessie-Lee Fry er Snr AIML Specialist med fokus på Computer Vision hos AWS. Hun hjælper organisationer med at udnytte Machine Learning og AI til at bekæmpe svindel og drive innovation på vegne af deres kunder. Uden for arbejdet nyder hun at tilbringe tid med sin familie, rejse og læse alt om ansvarlig kunstig intelligens.

Tidsstempel:

Mere fra AWS maskinindlæring