2016-08-26 14 views
6

OK. Oto moja rzecz.AWS Cognito Uwierzytelnienie użytkownika

Budujemy małą aplikację na Lumen/Laravel. Potrzebujemy, aby zarządzanie użytkownikami zostało całkowicie zajęte przez AWS cognito.

Zasadniczo 2 proste funkcje.

  1. Przekaż szczegóły użytkownika do puli użytkowników cognito AWS po zgłoszeniu użytkownika.
  2. Uwierzytelnij użytkownika przed pulą użytkowników Cognito za pomocą prostego adresu e-mail/telefonu komórkowego i hasła po zalogowaniu.

Musimy to zrobić za pomocą PHP.

Problem polega na tym, że nie jestem w stanie znaleźć żadnych dokumentów PHP API z jasną procedurą lub przykładami. Cognito dostarcza API - s tylko dla systemów Android, IOS, JS, Unity i Xamarian. Potrzebuję podobnej dokumentacji dla PHP.

Czy ktoś ma działający przykład dla tylko powyższych 2 funkcji za pomocą cognito API z PHP.

Uwaga: Prawie spędziłem ponad półtora dnia, zastanawiając się, czy i jak można to zrobić. Więc proszę po prostu nie wysyłaj mi żadnego linku, który pojawia się pierwszy lub drugi w Twojej wyszukiwarce Google. Duża możliwość, że już widziałem ten link bez powodzenia.

Każda pomoc zostanie doceniona.

Odpowiedz

6

Niestety, nie ma żadnych roboczych przykładów dla PHP. Obecnie Cognito obsługuje SDK wysokiego poziomu dla tych, o których wspomniałeś, ale nie obsługuje SDK wysokiego poziomu dla PHP. Pakiety SDK niskiego poziomu można wykorzystać, wywołując wymienione poniżej interfejsy API.

http://docs.aws.amazon.com/aws-sdk-php/v3/api/class-Aws.CognitoIdentityProvider.CognitoIdentityProviderClient.html

Poniższy przykład powinien działać z odrobiną przeliczeniu na PHP, podobnie jak większość kodu wewnątrz tego SDK https://github.com/aws/aws-sdk-android/blob/master/aws-android-sdk-cognitoidentityprovider/src/main/java/com/amazonaws/mobileconnectors/cognitoidentityprovider/CognitoUser.java

Zamiast wywoływać InitiateAuth, możesz zadzwonić AdminInitiate auth API z parametrem ADMIN_NO_SRP_AUTH, dzięki czemu nie trzeba wykonywać obliczeń SRP w PHP. Pakiety SDK o wysokim poziomie zapewniają owijanie wokół tego obliczenia, które zarządza nim dla ciebie, ale robienie tego na własną rękę jest dość trudne.

+1

Być może pomocne: https://github.com/pallant/laravel-aws-cognito-auth i https://github.com/aws/aws-sdk-php –

Powiązane problemy