前言正文
lacontext.hlapublicdefines.h該類是本地驗證的定義類,裡面定義了五類string:pocicies/options/credential types/error codes/error domain。laerror.h
lapublicdefines.h
localauthentication.h(包含檔案,即裡面包含了該framework裡面的其他類標頭檔案)
policies:
lapolicydeviceownerauthenticationwithbiometrics:使用touch id來驗證裝置所有者options:lapolicydeviceownerauthentication:使用touch id或者裝置密碼來驗證使用者
klaoptionuse***llbackcredential types:klaoptionauthenticationreason
klacredentialtypepasscodeerror codes:klacredentialtypepassphrase
klacredentialctkpin
error domain:
klaerrordomain:lacontext.h該類中有個lapolicy的列舉:lapolicydeviceownerauthenticationwithbiometrics(使用 touch id 認證)和lapolicydeviceownerauthentication(使用密碼或者裝置密碼進行驗證裝置所有者)。
需要注意,對於lapolicydeviceownerauthenticationwithbiometrics,touch id認證的時候我們的裝置必須有touch id設定,如果沒有或者該裝置本身不支援touch id,前者認證就會失敗,如果touch id被鎖定,則需要輸入密碼來解鎖touch id。另外,touch id如果輸入錯誤5次將會被鎖定,此時使用者必須使用輸入密碼的方式來結果它。如果密碼輸入也錯誤的話,你在設定--->touch id裡面就會看到:
並且只有經過一段時間之後才能使用。
對於後者的lapolicydeviceownerauthentication,它的意思是touch id或者密碼來解鎖。意思就是如果touch id可用,並且沒有鎖定,使用者第一次會要求使用指紋解鎖,否則就會使用密碼解鎖。這裡和另乙個列舉不一樣的是:
對於lapolicydeviceownerauthenticationwithbiometrics:
對於lapolicydeviceownerauthentication:
除了前面的兩個提示外,還有
直接上**,看看如何實現指紋解鎖或者指紋+密碼解鎖:
- (ibaction)authaction:(id)sender else
}];}else
}
首先是例項化乙個lacontext的上下文,然後首先有個方法:
- (bool)canevaluatepolicy:(lapolicy)policy error:(nserror * __autoreleasing *)error __attribute__((swift_error(none)));
驗證一下我們制定的lapolicy是否可以使用,error用來記錄不可使用的原因。
接下來就是:
- (void)evaluatepolicy:(lapolicy)policy
localizedreason:(nsstring *)localizedreason
reply:(void(^)(bool success, nserror * __nullable error))reply;
後續lacontext裡面其他的method或者property有了解了再補充。
參考文獻
Apple本地認證 密碼 Touch id
前言 正文lacontext.h laerror.h lapublicdefines.h localauthentication.h 包含檔案,即裡面包含了該framework裡面的其他類標頭檔案 lapublicdefines.h該類是本地驗證的定義類,裡面定義了五類string pocicies...
Apple本地認證 密碼 Touch id
前言 正文lacontext.h laerror.h lapublicdefines.h localauthentication.h 包含檔案,即裡面包含了該framework裡面的其他類標頭檔案 lapublicdefines.h該類是本地驗證的定義類,裡面定義了五類string pocicies...
Windows認證 Windows本地認證
windows的登陸密碼是儲存在系統本地的sam檔案中的,在登陸windows的時候,系統會將使用者輸入的密碼與sam檔案中的密碼進行對比,如果相同,則認證成功。sam檔案是位於 systemroot system32 config 目錄下的,用於儲存本地所有使用者的憑證資訊,但是這並不代表著你可以...