<!--
{
  "availability" : [
    "iOS: 9.0.0 -",
    "iPadOS: 9.0.0 -",
    "macCatalyst: 13.1.0 -",
    "macOS: 10.11.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 3.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "LocalAuthentication",
  "identifier" : "/documentation/LocalAuthentication/LAPolicy/deviceOwnerAuthentication",
  "metadataVersion" : "0.1.0",
  "role" : "Case",
  "symbol" : {
    "kind" : "Case",
    "modules" : [
      "Local Authentication"
    ],
    "preciseIdentifier" : "c:@E@LAPolicy@LAPolicyDeviceOwnerAuthentication"
  },
  "title" : "LAPolicy.deviceOwnerAuthentication"
}
-->

# LAPolicy.deviceOwnerAuthentication

User authentication with biometry, Apple Watch, or the device passcode.

```
case deviceOwnerAuthentication
```

## Discussion

You use the [`LAPolicy.deviceOwnerAuthentication`](/documentation/LocalAuthentication/LAPolicy/deviceOwnerAuthentication) policy when calling the [`evaluatePolicy(_:localizedReason:reply:)`](/documentation/LocalAuthentication/LAContext/evaluatePolicy(_:localizedReason:reply:)) method to authenticate a user in iOS with either biometrics or a passcode, in watchOS with a passcode, or in macOS with Touch ID, Apple Watch, or the user’s password.

If biometry is available, enrolled, and not disabled, the system uses that first. In macOS, the system simultaneously looks for a nearby, paired Apple Watch running watchOS 6 or later, and tries to use that in parallel. When these options aren’t available, the system prompts the user for the device passcode or user’s password.

In iOS, policy evaluation fails with the error [`passcodeNotSet`](/documentation/LocalAuthentication/LAError-swift.struct/passcodeNotSet) if the device passcode isn’t enabled. The system disables passcode authentication after too many unsuccessful attempts, with progressively increasing delays between attempts.

The authentication dialog contains a cancel button with a default title that you can customize using the [`localizedCancelTitle`](/documentation/LocalAuthentication/LAContext/localizedCancelTitle) property, as well as a fallback button that you can customize using [`localizedFallbackTitle`](/documentation/LocalAuthentication/LAContext/localizedFallbackTitle) property. When the user taps the fallback button, the system reverts to asking for the device passcode or user’s password. When the user taps the cancel button, the evaluation fails with the [`userCancel`](/documentation/LocalAuthentication/LAError-swift.struct/userCancel) error.

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)