2016-01-21 144 views
2

我不會發布我的任何代碼,因爲這只是一個問題,要知道是否有可能。 我一直在使用谷歌搜索,但沒有找到任何具體的解決方案。我希望有人能幫助我。symfony web服務用戶名和密碼

事實:

  • 我有一個登錄表單
  • 我需要在web服務
  • 我需要發送包含用戶名和密碼來驗證憑據,以拿回令牌如果登錄成功。

的問題:

  • 通過自定義提供商,我始終堅持的事實,他們只有到userename,如直接訪問:loadUserByUsername。我也需要在那裏訪問密碼,才能將其發送到我的網絡服務。
  • 我只有1個Web服務,如果提供的用戶名和密碼正確,它只發回一個令牌。

問:

如何訪問和雙方的用戶名和密碼,我的Web服務發送?

謝謝!

回答

0

一般而言,可以使用API token來驗證Web服務。

當創建用戶帳戶(通過管理員或註冊表單)時,通常通過自動生成腳本發佈API令牌。這個令牌然後通過API調用傳遞給頭部中的Web服務,然後使用它來認證用戶。

就Symfony而言,迄今爲止最簡單的方法就是使用Guard。由KNP的Ryan Weaver創建的新組件。

KNPUniversity有一個great tutorial(免費)。

請注意,這只是許多人的一種選擇,「最好」的方式可能主要是基於觀點並直接與所討論的用例相關。但它可能有助於你走上正確的軌道。

0

如果您要創建的令牌應該是JSON Web令牌(JWT),那麼一個非常合適的包是LexikJWTAuthenticationBundle,它幾乎可以自動完成所有工作。如果你只是按照文檔,你會迅速啓動並運行。您可以將它與FOSUserBundle,以及一個自定義的用戶實體或其他相結合。

相關問題