|
@@ -138,7 +138,6 @@ public struct AuthenticationPolicy : OptionSetType {
|
|
|
even if fingers are added or removed.
|
|
|
*/
|
|
|
@available(iOS 8.0, OSX 10.10, *)
|
|
|
- @available(watchOS, unavailable)
|
|
|
public static let UserPresence = AuthenticationPolicy(rawValue: 1 << 0)
|
|
|
|
|
|
/**
|
|
@@ -148,7 +147,6 @@ public struct AuthenticationPolicy : OptionSetType {
|
|
|
*/
|
|
|
@available(iOS 9.0, *)
|
|
|
@available(OSX, unavailable)
|
|
|
- @available(watchOS, unavailable)
|
|
|
public static let TouchIDAny = AuthenticationPolicy(rawValue: 1 << 1)
|
|
|
|
|
|
/**
|
|
@@ -158,14 +156,12 @@ public struct AuthenticationPolicy : OptionSetType {
|
|
|
*/
|
|
|
@available(iOS 9.0, *)
|
|
|
@available(OSX, unavailable)
|
|
|
- @available(watchOS, unavailable)
|
|
|
public static let TouchIDCurrentSet = AuthenticationPolicy(rawValue: 1 << 3)
|
|
|
|
|
|
/**
|
|
|
Constraint: Device passcode
|
|
|
*/
|
|
|
@available(iOS 9.0, OSX 10.11, *)
|
|
|
- @available(watchOS, unavailable)
|
|
|
public static let DevicePasscode = AuthenticationPolicy(rawValue: 1 << 4)
|
|
|
|
|
|
/**
|
|
@@ -174,7 +170,6 @@ public struct AuthenticationPolicy : OptionSetType {
|
|
|
*/
|
|
|
@available(iOS 9.0, *)
|
|
|
@available(OSX, unavailable)
|
|
|
- @available(watchOS, unavailable)
|
|
|
public static let Or = AuthenticationPolicy(rawValue: 1 << 14)
|
|
|
|
|
|
/**
|
|
@@ -183,7 +178,6 @@ public struct AuthenticationPolicy : OptionSetType {
|
|
|
*/
|
|
|
@available(iOS 9.0, *)
|
|
|
@available(OSX, unavailable)
|
|
|
- @available(watchOS, unavailable)
|
|
|
public static let And = AuthenticationPolicy(rawValue: 1 << 15)
|
|
|
|
|
|
/**
|
|
@@ -191,7 +185,6 @@ public struct AuthenticationPolicy : OptionSetType {
|
|
|
*/
|
|
|
@available(iOS 9.0, *)
|
|
|
@available(OSX, unavailable)
|
|
|
- @available(watchOS, unavailable)
|
|
|
public static let PrivateKeyUsage = AuthenticationPolicy(rawValue: 1 << 30)
|
|
|
|
|
|
/**
|
|
@@ -200,7 +193,6 @@ public struct AuthenticationPolicy : OptionSetType {
|
|
|
*/
|
|
|
@available(iOS 9.0, *)
|
|
|
@available(OSX, unavailable)
|
|
|
- @available(watchOS, unavailable)
|
|
|
public static let ApplicationPassword = AuthenticationPolicy(rawValue: 1 << 31)
|
|
|
|
|
|
public let rawValue : Int
|
|
@@ -246,7 +238,6 @@ private let ValueData = kSecValueData as String
|
|
|
|
|
|
/** Other Constants */
|
|
|
@available(iOS 8.0, OSX 10.10, *)
|
|
|
-@available(watchOS, unavailable)
|
|
|
private let UseOperationPrompt = kSecUseOperationPrompt as String
|
|
|
|
|
|
#if os(iOS)
|
|
@@ -255,23 +246,18 @@ private let UseNoAuthenticationUI = kSecUseNoAuthenticationUI as String
|
|
|
#endif
|
|
|
|
|
|
@available(iOS 9.0, OSX 10.11, *)
|
|
|
-@available(watchOS, unavailable)
|
|
|
private let UseAuthenticationUI = kSecUseAuthenticationUI as String
|
|
|
|
|
|
@available(iOS 9.0, OSX 10.11, *)
|
|
|
-@available(watchOS, unavailable)
|
|
|
private let UseAuthenticationContext = kSecUseAuthenticationContext as String
|
|
|
|
|
|
@available(iOS 9.0, OSX 10.11, *)
|
|
|
-@available(watchOS, unavailable)
|
|
|
private let UseAuthenticationUIAllow = kSecUseAuthenticationUIAllow as String
|
|
|
|
|
|
@available(iOS 9.0, OSX 10.11, *)
|
|
|
-@available(watchOS, unavailable)
|
|
|
private let UseAuthenticationUIFail = kSecUseAuthenticationUIFail as String
|
|
|
|
|
|
@available(iOS 9.0, OSX 10.11, *)
|
|
|
-@available(watchOS, unavailable)
|
|
|
private let UseAuthenticationUISkip = kSecUseAuthenticationUISkip as String
|
|
|
|
|
|
#if os(iOS)
|
|
@@ -309,7 +295,6 @@ public class Keychain {
|
|
|
}
|
|
|
|
|
|
@available(iOS 8.0, OSX 10.10, *)
|
|
|
- @available(watchOS, unavailable)
|
|
|
public var authenticationPolicy: AuthenticationPolicy? {
|
|
|
return options.authenticationPolicy
|
|
|
}
|
|
@@ -327,7 +312,6 @@ public class Keychain {
|
|
|
}
|
|
|
|
|
|
@available(iOS 8.0, OSX 10.10, *)
|
|
|
- @available(watchOS, unavailable)
|
|
|
public var authenticationPrompt: String? {
|
|
|
return options.authenticationPrompt
|
|
|
}
|
|
@@ -400,7 +384,6 @@ public class Keychain {
|
|
|
}
|
|
|
|
|
|
@available(iOS 8.0, OSX 10.10, *)
|
|
|
- @available(watchOS, unavailable)
|
|
|
public func accessibility(accessibility: Accessibility, authenticationPolicy: AuthenticationPolicy) -> Keychain {
|
|
|
var options = self.options
|
|
|
options.accessibility = accessibility
|
|
@@ -427,7 +410,6 @@ public class Keychain {
|
|
|
}
|
|
|
|
|
|
@available(iOS 8.0, OSX 10.10, *)
|
|
|
- @available(watchOS, unavailable)
|
|
|
public func authenticationPrompt(authenticationPrompt: String) -> Keychain {
|
|
|
var options = self.options
|
|
|
options.authenticationPrompt = authenticationPrompt
|
|
@@ -1011,13 +993,11 @@ extension Options {
|
|
|
query[AttributeAuthenticationType] = authenticationType.rawValue
|
|
|
}
|
|
|
|
|
|
- #if !os(watchOS)
|
|
|
if #available(iOS 8.0, OSX 10.10, *) {
|
|
|
if authenticationPrompt != nil {
|
|
|
query[UseOperationPrompt] = authenticationPrompt
|
|
|
}
|
|
|
}
|
|
|
- #endif
|
|
|
|
|
|
return query
|
|
|
}
|