---
title: ASAuthorizationPlatformPublicKeyCredentialProvider
framework: authenticationservices
role: symbol
role_heading: Class
path: authenticationservices/asauthorizationplatformpublickeycredentialprovider
---

# ASAuthorizationPlatformPublicKeyCredentialProvider

A mechanism for providing public key credential requests to an app or service with iCloud Keychain.

## Declaration

```swift
class ASAuthorizationPlatformPublicKeyCredentialProvider
```

## Mentioned in

Supporting passkeys

## Overview

Overview The credential provider accesses public-private key pairs stored in iCloud Keychain for registration or authentication with a relying party. Instantiate this object, passing in the relying party identifier for the credentials.

## Topics

### Creating the provider

- [init(relyingPartyIdentifier:)](authenticationservices/asauthorizationplatformpublickeycredentialprovider/init(relyingpartyidentifier:).md)

### Creating the request

- [relyingPartyIdentifier](authenticationservices/asauthorizationplatformpublickeycredentialprovider/relyingpartyidentifier.md)
- [createCredentialAssertionRequest(challenge:)](authenticationservices/asauthorizationplatformpublickeycredentialprovider/createcredentialassertionrequest(challenge:).md)
- [createCredentialRegistrationRequest(challenge:name:userID:)](authenticationservices/asauthorizationplatformpublickeycredentialprovider/createcredentialregistrationrequest(challenge:name:userid:).md)
- [createCredentialRegistrationRequest(challenge:name:userID:requestStyle:)](authenticationservices/asauthorizationplatformpublickeycredentialprovider/createcredentialregistrationrequest(challenge:name:userid:requeststyle:).md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.md)

### Conforms To

- [ASAuthorizationProvider](authenticationservices/asauthorizationprovider.md)
- [ASAuthorizationWebBrowserPlatformPublicKeyCredentialProvider](authenticationservices/asauthorizationwebbrowserplatformpublickeycredentialprovider-19bq.md)
- [CVarArg](swift/cvararg.md)
- [Copyable](swift/copyable.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Escapable](swift/escapable.md)
- [Hashable](swift/hashable.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Credential providers

- [ASAuthorizationSecurityKeyPublicKeyCredentialProvider](authenticationservices/asauthorizationsecuritykeypublickeycredentialprovider.md)
