<!--
{
  "availability" : [
    "macCatalyst: 13.0.0 -",
    "macOS: 10.4.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "Security",
  "identifier" : "/documentation/Security/AuthorizationCallbacks",
  "metadataVersion" : "0.1.0",
  "role" : "Structure",
  "symbol" : {
    "kind" : "Structure",
    "modules" : [
      "Security"
    ],
    "preciseIdentifier" : "c:@S@AuthorizationCallbacks"
  },
  "title" : "AuthorizationCallbacks"
}
-->

# AuthorizationCallbacks

The interface implemented by the Security Server.

```
typedef struct AuthorizationCallbacks { ... } AuthorizationCallbacks;
```

## Overview

This structure declares the functions that your authorization plug-in uses to communicate with the authorization engine. These functions are passed to your plug-in through the [`AuthorizationPluginCreate`](/documentation/Security/AuthorizationPluginCreate) function.

## Topics

### Instance Properties

[`SetResult`](/documentation/Security/AuthorizationCallbacks/SetResult)

Returns the result of an authorization operation.

[`RequestInterrupt`](/documentation/Security/AuthorizationCallbacks/RequestInterrupt)

Requests the authorization engine to interrupt the currently active authorization mechanism.

[`DidDeactivate`](/documentation/Security/AuthorizationCallbacks/DidDeactivate)

Reports the successful deactivation of an authorization mechanism.

[`GetContextValue`](/documentation/Security/AuthorizationCallbacks/GetContextValue)

Reads a value collected during authorization.

[`SetContextValue`](/documentation/Security/AuthorizationCallbacks/SetContextValue)

Stores data collected during authorization as a key-value pair.

[`RemoveContextValue`](/documentation/Security/AuthorizationCallbacks/RemoveContextValue)

Removes a value collected during authorization.

[`GetHintValue`](/documentation/Security/AuthorizationCallbacks/GetHintValue)

Reads a value stored by the plug-in authorization mechanism.

[`GetImmutableHintValue`](/documentation/Security/AuthorizationCallbacks/GetImmutableHintValue)

Reads an immutable value stored by the plug-in authorization mechanism.

[`SetHintValue`](/documentation/Security/AuthorizationCallbacks/SetHintValue)

Stores data needed during authorization as a key-value pair.

[`RemoveHintValue`](/documentation/Security/AuthorizationCallbacks/RemoveHintValue)

Removes a value stored by the plug-in authorization mechanism.

[`GetArguments`](/documentation/Security/AuthorizationCallbacks/GetArguments)

Reads the arguments for this authorization mechanism from the authorization policy database.

[`GetSessionId`](/documentation/Security/AuthorizationCallbacks/GetSessionId)

Reads the session ID.

[`GetLAContext`](/documentation/Security/AuthorizationCallbacks/GetLAContext)

Constructs a local authentication context.

[`GetTokenIdentities`](/documentation/Security/AuthorizationCallbacks/GetTokenIdentities)

Returns an array of identities available on tokens.

[`GetTKTokenWatcher`](/documentation/Security/AuthorizationCallbacks/GetTKTokenWatcher)

Constructs a token watcher.

[`version`](/documentation/Security/AuthorizationCallbacks/version)

The engine callback version.



---

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)