2017-05-08 31 views
0

我們有一個現有的iOS應用程序,其中基於用戶名/密碼的身份驗證過程已到位。現在,我們計劃整合生物識別/觸摸身份驗證。下面是我們的要求是短期的iOS Touch ID-我應該選擇本地身份驗證API還是鑰匙串訪問API?

  1. 使用指紋認證,而不是現有的基於用戶名/密碼登錄
  2. 預置至現有的用戶名/基於密碼的登錄頁面,如果用戶取消了觸摸ID彈出窗口或如果指紋掃描失敗或者設備不支持Touch ID。

  3. 我們還希望在設備上存儲用戶名&密碼,這樣我們就可以在用戶完成生物識別身份驗證後觸發身份驗證Web服務。

我們都知道,有實現iOS中使用Touch ID兩種可能的方式,即本地認證(LAContext)帶觸摸ID保護鑰匙扣服務(使用訪問控制列表)

我們首先想到的是我們將實現本地身份驗證方法並使用鑰匙串來單獨存儲用戶憑證。但是由於我們需要在設備上存儲用戶憑證,鑰匙串訪問控制列表是否更好?

我對使用哪種方法和哪種方法最適合我們感到困惑。有這方面知識的人請幫我決定。如果您需要任何特定信息,請在評論中告訴我。

回答

1

我會向你推薦鑰匙鏈解決方案。 Keychain中的憑證將受TouchID保護。當有人破解你的應用程序時,對憑證的訪問仍將受到用戶指紋的保護。

我不建議您將密碼保存在鑰匙串中。至少保存密碼哈希或更好地保存登錄令牌。

+0

感謝您的回答!你有任何圖書館/框架推薦在iOS上使用基於令牌的登錄? –

+0

登錄令牌系統取決於服務器實現。也許有些圖書館存在,但我不知道它們。對不起。 –

+0

@KryštofMatěj如何使用Touch ID保護顯示鑰匙串服務中的Touch ID彈出窗口?我相信您仍然需要使用本地身份驗證API。 – lifemoveson