2017-06-19 64 views
0

我想爲我的REST API設置自定義身份驗證機制。這將用於JWT令牌的IOT設備認證,所以我不能使用現有的基於用戶的JHipster認證。 有沒有一個例子或指導呢?除了Spring Boot的底層機制,有什麼特定的JHipster?jijster spring引導自定義身份驗證提供程序

架構: 典型的JHipster架構與單獨的網關和微服務應用程序。微服務應用程序提供需要使用jwt令牌進行身份驗證的其他服務。網關應用程序爲Web用戶生成令牌,憑據基於用戶名和密碼。

我想擴展這個設置並打開同樣的休息服務到我們的iot設備。這些設備不是Web用戶,因此它們沒有用戶名和密碼憑據,因此不會生成jwt令牌。我們將在安全網絡上註冊這些設備,並將jwt令牌嵌入到固件中。這些jwt令牌將基於設備ID,MAC ID和密鑰。

我還沒有嘗試任何方法,我正在尋找一個示例代碼,我可以在微服務應用程序上擴展身份驗證代碼,以便它還驗證來自設備的請求。添加一個自定義身份驗證提供程序與春季啓動似乎是要走的路,但我不知道。

+0

Thanks @GaëlMarziou,我已更新我的問題。 –

回答

0

我用一些特定的android設備做了類似的事情,我們的方法是隻爲設備部署網關,而不是嘗試在同一網關上與人類用戶混用。所以這意味着每個特定用途的一個網關。

由2個網關發佈的智威湯姆幣應該共享相同的祕密,以便服務可以驗證他們的簽名。然後,無論是將JHipster標記保持原樣,還是將不同的角色分配給人員和設備,並且/或者您還可以在標記標頭中添加網關發行者。

根據您的安全要求,您可以通過將「設備ID + MAC地址」映射到網關用戶標識並將您的密碼映射爲用戶密碼,輕鬆構建此設備網關。

+0

這似乎是目前最簡單的方法。編寫自定義身份驗證提供程序就像地獄一樣,我根本找不到一個可用的示例。其他的選擇是與UAA和Oauth2.0更復雜。謝謝你的提示。 –

相關問題