Are App Attest or DeviceCheck supported on any Macs?

In the WWDC 2021 session Mitigate fraud with App Attest and DeviceCheck it is said that:

App Attest is supported on devices that have a Secure Enclave, but there are cases, such as app extensions, where isSupported will still return false.

The documentation shows that the following Macs have a Secure Enclave:

  • MacBook Pro computers with Touch Bar (2016 and 2017) that contain the Apple T1 Chip
  • Intel-based Mac computers that contain the Apple T2 Security Chip
  • Mac computers with Apple silicon

I'm using a 2018 15" MacBook Pro containing a T2 Security Chip for testing, however, DCAppAttestService.shared.isSupported always returns false in native macOS or Catalyst apps. DCDevice.current.isSupported also returns false.

The documentation for DCAppAttestService shows availability on "macOS 11.0+" and "Mac Catalyst 14.0+". It appears to have been added in the macOS 11.3 SDK included in Xcode 12.5. DCDevice shows availability on "macOS 10.15+" and "Mac Catalyst 13.0+". Although both APIs are available on the listed OSes, I only ever see isSupported == false.

Are App Attest or DeviceCheck functional on any Macs? If so:

  • Are there more specific Macs that support the feature (e.g., Apple Silicon Macs only)?
  • Are there any additional steps that need to be taken to use them (e.g., changes to entitlements, provisioning profiles or distribution through the Mac App Store)?
    • In native macOS apps, it doesn't actually appear to be possible to add the App Attest capability in Xcode under "Signing & Capabilities".

If not, I think it would be good to update the documentation with this limitation since I'd expect them to work based on the availability being "macOS 10.15+" or "macOS 11.0+" for DeviceCheck and App Attest, respectively. I imagine most others would make the same assumptions.

In the session Safeguard your accounts, promotions, and content they say "Leveraging Apple's secure enclave processor, iOS and tvOS generate a cryptographic attestation of your app's identity which you can send to your server for verification before making your critical assets available." Since macOS wasn't mentioned, I'm assuming it's not supported.

https://developer.apple.com/documentation/devicecheck/dcappattestservice/3573915-issupported

If you read isSupported from an app running on a Mac device, the value is always false. This includes Mac Catalyst apps, and iOS or iPadOS apps running on Apple silicon.

So it appears it's just not supported on any Mac devices yet, despite the DCAppAttestService class being available in macOS Big Sur.

I agree with you, the documentation needs to be updated to explicitly note that Mac devices have yet to support the actual service.

Are App Attest or DeviceCheck supported on any Macs?
 
 
Q