Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
f046052
Initial changes
dewi-tik Sep 25, 2025
a08ff7f
WIP
dewi-tik Sep 30, 2025
3007deb
Merge branch 'main' into website/docs--update-source-docs
dewi-tik Sep 30, 2025
dbbb2de
WIP
dewi-tik Oct 2, 2025
b23e4c2
WIP
dewi-tik Oct 2, 2025
e6fec19
WIP
dewi-tik Oct 2, 2025
4f6a9f3
Remove some images and rename the remaining images
dewi-tik Oct 2, 2025
74a14f0
Work on GWS and add source stage info to all docs
dewi-tik Oct 2, 2025
5862f51
Fix links
dewi-tik Oct 2, 2025
48807ac
WIP
dewi-tik Oct 2, 2025
88ae143
Mailcow and Plex reworked
dewi-tik Oct 3, 2025
7176c93
Primarily twitch, twitter, plex and mailcow and minor changes to others
dewi-tik Oct 3, 2025
e9ec965
Typos and minor changes
dewi-tik Oct 3, 2025
7a2453c
WIP
dewi-tik Oct 5, 2025
68762a5
Apple doc
dewi-tik Oct 6, 2025
3cb89ca
Convert discord policy to property mapping and other small updates
dewi-tik Oct 6, 2025
d322292
Header changes
dewi-tik Oct 6, 2025
b78f5fa
WIP
dewi-tik Oct 6, 2025
5656321
WIP
dewi-tik Oct 6, 2025
62fc6b7
WIP
dewi-tik Oct 6, 2025
1171aed
Removed support levels
dewi-tik Oct 6, 2025
547e9af
Apply suggestions
dewi-tik Oct 6, 2025
ed1977f
Add enterprise badges
dewi-tik Oct 6, 2025
03c716c
Remove line
dewi-tik Oct 6, 2025
49a0cba
Add missing backtick
dewi-tik Oct 7, 2025
07c2871
Missing )
dewi-tik Oct 7, 2025
978c3ae
Update Entra ID permissions
dewi-tik Oct 7, 2025
655883f
Merge remote-tracking branch 'origin/main' into website/docs--update-…
dewi-tik Oct 7, 2025
30c2701
Apply suggestions
dewi-tik Oct 8, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
75 changes: 43 additions & 32 deletions website/docs/users-sources/sources/social-logins/apple/index.md
Original file line number Diff line number Diff line change
@@ -1,72 +1,83 @@
---
title: Apple
support_level: authentik
tags:
- source
- apple
---

Allows users to authenticate using their Apple ID.
Allows users to authenticate using their Apple ID credentials.

## Preparation

:::caution
An Apple developer account is required.
:::
The following placeholders are used in this guide:

:::caution
Apple mandates the use of a [registered TLD](https://en.wikipedia.org/wiki/List_of_Internet_top-level_domains), as such this source will not work with .local and other non-public TLDs.
:::
Apple mandates the use of a [registered top-level domain](https://en.wikipedia.org/wiki/List_of_Internet_top-level_domains), therefore this source will not work with `.local` and other non-public TLDs.

The following placeholders are used in this guide:
## Apple configuration

- `authentik.company` is the FQDN of the authentik install.
To integrate Apple with authentik, you will need to create two identifiers and a key in the Apple Developer Portal.

## Apple
### Registering identifiers

1. Log in to your Apple developer account, and navigate to **Certificates, IDs & Profiles**, then click **Identifiers** in the sidebar.
2. Register a new Identifier with the type of **App IDs**, and the subtype **App**.
3. Choose a name that users will recognise for the **Description** field.
4. For your bundle ID, use the reverse domain of authentik, in this case `company.authentik`.
1. Log in to the [Apple Developer Portal](https://developer.apple.com/account/), and navigate to **Account** > **Certificates, IDs & Profiles**, then click **Identifiers** in the sidebar.
2. Register a new identifier with the type of **App IDs**, and the subtype **App**.
3. Choose a name that users will recognize for the **Description** field (e.g. `authentik`).
4. For your **Bundle ID**, use the reverse of your authentik domain, for example: `company.authentik`.
5. Scroll down the list of capabilities, and check the box next to **Sign In with Apple**.
6. At the top, click **Continue** and **Register**.

![](./app_id.png)

7. Register another new Identifier with the type of **Services IDs**.
7. Register another new identifier with the type of **Services IDs**.
8. Again, choose the same name as above for your **Description** field.
9. Use the same identifier as above, but add a suffix like `signin` or `oauth`, as identifiers are unique.
10. At the top, click **Continue** and **Register**.

![](./service_id.png)

11. Once back at the overview list, click on the just-created Identifier.
### Configuring identifier

11. Once back at the overview list, click on the just-created identifier.
12. Enable the checkbox next to **Sign In with Apple**, and click **Configure**
13. Under domains, enter `authentik.company`.
13. Under **Domains and Subdomains**, enter `authentik.company`.
14. Under **Return URLs**, enter `https://authentik.company/source/oauth/callback/apple/`.

![](./app_service_config.png)

15. Click on **Keys** in the sidebar. Register a new Key with any name, and select **Sign in with Apple**.
16. Click on **Configure**, and select the App ID you've created above.
### Registering a key

15. Click **Keys** in the sidebar, then register a new key with any name, and select **Sign in with Apple**.
16. Click **Configure**, then select the App ID that you created.
17. At the top, click **Save**, **Continue** and **Register**.
18. Download the Key file and note the **Key ID**.

![](./key.png)

19. Note the Team ID, visible at the top of the page.
19. Take note of the **Team ID** visible at the top of the page.

## authentik
## authentik configuration

20. Under **Directory > Federation & Social login** click **Create Apple OAuth Source**
To support the integration of Apple with authentik, you need to create an Apple OAuth source in authentik.

21. **Name**: `Apple`
22. **Slug**: `apple`
23. **Consumer Key:** The identifier from step 9, then `;`, then your Team ID from step 19, then `;`, then the Key ID from step 18.
1. Log in to authentik as an administrator and open the authentik Admin interface.
2. Navigate to **Directory** > **Federation and Social login**, click **Create**, then configure the following settings:
- **Select type**: select **Apple OAuth Source**.
- **Create Apple OAuth Source**: provide a name, a slug which must match the slug used in the Apple `Return URL`, and the following required configurations:
- Under **Protocol Settings**:
- **Consumer key**: The identifier from step 9, then `;`, then your **Team ID** from step 19, then `;`, then the **Key ID** from step 18. (e.g. `company.authentik;JQNH45HN7V;XFBNJ82BV6`).
- **Consumer secret**: Paste the contents of the keyfile you've downloaded.
- **Scopes** _(optional)_: define any further access scopes.

Example: `io.goauthentik.dev-local;JQNH45HN7V;XFBNJ82BV6`
3. Click **Save**.

24. **Consumer Secret:** Paste the contents of the keyfile you've downloaded

Save, and you now have Apple as a source.

:::info
:::info Display new source on login screen
For instructions on how to display the new source on the authentik login page, refer to the [Add sources to default login page documentation](../../index.md#add-sources-to-default-login-page).
:::

:::info Embed new source in flow :ak-enterprise
For instructions on embedding the new source within a flow, such as an authorization flow, refer to the [Source Stage documentation](../../../../../add-secure-apps/flows-stages/stages/source).
:::

## Source property mappings

Source property mappings allow you to modify or gather extra information from sources. See the [overview](../../property-mappings/index.md) for more information.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading