---
title: ASAuthorizationController
framework: authenticationservices
role: symbol
role_heading: Class
path: authenticationservices/asauthorizationcontroller
---

# ASAuthorizationController

A controller that manages authorization requests that a provider creates.

## Declaration

```swift
class ASAuthorizationController
```

## Mentioned in

Authenticating people by using passkeys in browser apps

## Overview

Overview Create authorization requests for the credential types your app supports, such as ASAuthorizationAppleIDRequest for Sign in with Apple, or ASAuthorizationPasswordRequest for password credentials. Create an authorization controller using init(authorizationRequests:), supplying the authorization requests you create. Set the authorization controller’s delegate to receive responses when requests succeed or fail, and set its presentationContextProvider so that the authorization controller can present UI. Call performAutoFillAssistedRequests() to present inline UI to request credentials, or performRequests() or performRequests(options:) to request credentials using modal UI. ASAuthorizationController calls your delegate’s methods when the request completes. Set the content type of text fields in your app’s login UI so that ASAuthorizationController can detect when to offer AutoFill suggestions. Use username as the content type for user name text fields, and password for password fields.

## Topics

### Creating a controller

- [init(authorizationRequests:)](authenticationservices/asauthorizationcontroller/init(authorizationrequests:).md)

### Inspecting requests

- [ASAuthorizationRequest](authenticationservices/asauthorizationrequest.md)
- [authorizationRequests](authenticationservices/asauthorizationcontroller/authorizationrequests.md)
- [customAuthorizationMethods](authenticationservices/asauthorizationcontroller/customauthorizationmethods.md)

### Presenting requests

- [presentationContextProvider](authenticationservices/asauthorizationcontroller/presentationcontextprovider.md)
- [ASAuthorizationControllerPresentationContextProviding](authenticationservices/asauthorizationcontrollerpresentationcontextproviding.md)

### Executing requests

- [performRequests()](authenticationservices/asauthorizationcontroller/performrequests().md)
- [performRequests(options:)](authenticationservices/asauthorizationcontroller/performrequests(options:).md)
- [performAutoFillAssistedRequests()](authenticationservices/asauthorizationcontroller/performautofillassistedrequests().md)
- [cancel()](authenticationservices/asauthorizationcontroller/cancel().md)
- [ASAuthorizationController.RequestOptions](authenticationservices/asauthorizationcontroller/requestoptions.md)

### Responding to request completion

- [delegate](authenticationservices/asauthorizationcontroller/delegate.md)
- [authorizationController(_:didCompleteWithCustomMethod:)](authenticationservices/asauthorizationcontrollerdelegate/authorizationcontroller(_:didcompletewithcustommethod:).md)
- [ASAuthorizationControllerDelegate](authenticationservices/asauthorizationcontrollerdelegate.md)

## Relationships

### Inherits From

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

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Authorization requests

- [AuthorizationController](authenticationservices/authorizationcontroller.md)
- [ASAuthorizationResult](authenticationservices/asauthorizationresult.md)
