2017-09-03 8 views
0

私はAuth0 Web LoginでSwift Appをセットアップしても問題ありません。それから私はソーシャルメディアのログインが完全にうまくいくという結果で "ロック"ログインを実装しようとしましたが、私はusername-passwordメソッドでログインできません。Swhift Username-PasswordのAuth0 "Lock"が動作しない

Auth0データベースでは、サインアップしたユーザーが表示されます(新しいユーザー名 - passowordユーザーのサインアップが実際に機能していることを示しています)。ロックウィジェットでログインしようとすると、私はエラーが表示されます: "申し訳ありませんが、ログインしようとすると何かが間違っていました。"私も登録された電子メールを検証しようとしましたが、それでも問題は解決しませんでした。 アイデアは何ですか?ここで何が問題になるのでしょうか?

答えて

0

また、その問題をAuth0/Lockサポートに指摘した後、解決策が見つかりました。

Lock 
     .classic() 
     .withOptions { 
      $0.scope = "openid profile" 
      $0.oidcConformant = true 
      $0.logHttpRequest = true 
     } 
     .withStyle { 
      $0.title = "App Name" 
     } 
     .onAuth { credentials in 
      print("successful login") 
     } 
     .onError { error in 
      print("Failed with error \(error)") 
     } 
     .present(from: self) 

の代わりに、Webログイン:

Auth0 
.webAuth() 
.audience("https://alienbash.eu.auth0.com/userinfo") 
.start { 
    switch $0 { 
    case .failure(let error): 
     // Handle the error 
     print("Error: \(error)") 
    case .success(let credentials): 
     // Do something with credentials e.g.: save them. 
     // Auth0 will automatically dismiss the hosted login page 
     print("Credentials: \(credentials)") 
    } 

} 

1は「Grant_Type」に変更することを確認する必要があり、いくつかのVC内のロッククライアントを使用する場合:多分これは同じ問題を抱えて、人々を助けますAuth0クライアントの設定でも、「パスワード」の許可が許可されます。そのためには、あなたのAuth0クライアントにに行く:

Settings --> Advances Settings --> Grant Types

とロック 『「新しいAuth0クライアントを作成し、使用するときに避けられないだろうと、このチェックマークはデフォルトでオフにされるパスワード』を確認してくださいクライアント。 enter image description here