はじめに
ごきげんよう、IDチームのわかなです!
OktaとApple Business Managerの統合が早期アクセスより実行できるため、試してみました!
なにができるの?
OktaからApple Business Managerへユーザープロビジョニングができるようになります。
また、プロビジョニングしたユーザーはApple IDにログインする際にOkta経由でログインができるようになります。
前提条件と注意点
- Oktaの特権管理者及びABMにて管理者である必要があります。
- ABMにてドメインを登録する必要があります。(※特にドメイン登録の要件は厳しいため、注意が必要です)
- TXTレコードを登録し、ドメインをロックする
- すでにドメインでアカウントを作っているユーザーは、個別に届くメールから、管理対象Appleアカウントとして承認するか、個人のメールアドレスに移行する必要がある
- ABMのクライアントシークレットを定期的(半年〜1年)に更新する必要があります。
- MDMやVPPの証明書と同じ周期で管理すると忘れなさそうです。
- ABM締め出し対策の為、
@xxx.appleid.com
の管理者アカウントを用意しておくと良いです。

機能の有効化
Okta管理コンソールから、Settings(設定) > Features(機能)にアクセスし、「Managed Apple ID Federation and Provisioning(マネージドApple IDの連携認証とプロビジョニング)」機能を探して有効化します。

連携認証のセットアップ
Okta管理コンソールで認証アプリケーションを設定する
- Applications(アプリケーション)より、「Create App Integration(アプリ統合を作成)」をクリックします。
- サインイン方式として「OIDC – OpenID Connect」、アプリケーションタイプとして「Web Application(Webアプリケーション)」を選択し、「Next(次へ)」をクリックします。

3. 新規Webアプリ統合ページで以下を入力します。
- App Integration Name(アプリ統合名):
Apple Business Manager OIDC
- Grant type(付与タイプ):以下をチェック
- 「Authorization Code(認可コード)」
- 「Refresh Token(リフレッシュトークン)」
- サインインリダイレクトURI:
https://gsa-ws.apple.com/grandslam/GsService2/acs
- 割り当て:アプリ統合する実行者がアカウントが入ったグループを割り当て、「Save(保存)」します。


4. つづいて、Okta APIスコープを許可します。
- APIスコープのリストから
ssf.manage
とssf.read
それぞれの「Grant(付与)」をクリックします。


5. 実行者のOktaアカウントをアプリケーションにアサインします。
6. General(一般)タブより、次のステップで利用するクライアントIDとクライアントシークレットを控えておきます。

Apple Business Managerで認証をする
- 環境設定 > 管理対象Apple Account > ユーザーサインインとディレクトリ同期より、「今すぐ始める」「カスタムIDプロパイダ」をクリックします。



2. カスタムIDプロパイダ設定画面で以下を入力します。
- 名前:
Okta
- クライアントID:Okta「Apple Business Manager OIDC」アプリケーションのクライアントID
- クライアントシークレット:Okta「Apple Business Manager OIDC」アプリケーションのクライアントシークレット
- SSF構成URL:
https://yourOktaOrgURL/.well-known/ssf-configuration
- OpenID構成URL:
https://yourOktaOrgURL/.well-known/openid-configuration

3. 「続ける」をクリックすると認証が開始されます。


4. Oktaが接続済みになっていれば認証成功です!

OktaとABM間のディレクトリ同期をセットアップする
- Okta管理コンソールのApplications(アプリケーション)より、「Create App Integration(アプリ統合を作成)」をクリックします。
- サインイン方式として「SAML 2.0」を選択し、「Next(次へ)」をクリックします。

3. 新規SAML統合ページで以下を入力します。
- App Name(アプリ名):
Apple Business Manager SCIM
- 「Do not display application icon to users」選択し、「Next(次へ)」をクリックします。

4. つづいて次の新規SAML統合ページで以下を入力します。
- Single sign-on URL(シングルサインオンURL):
https://YourOktaOrgURL
- Audience URI(オーディエンスURI):
https://YourOktaOrgURL
を入力し、「Save(保存)」します。

5. ABMの「管理対象Apple Account」の「ドメイン」管理より「Oktaでサインイン」を有効にします。

6. カスタムIDプロパイダの同期 の「設定」をクリックします。

- この時ドメイン設定が完了していないと、
現在、カスタムIDプロパイダの同期を有効にできません。
というエラーが表示されます。

7. 認可コールバックURLはテナントのドメインに応じたURLを設定ください。
https://system-admin.okta.com/admin/app/cpc/<SAML_AppBundleName>/oauth/callback
https://system-admin.oktapreview.com/admin/app/cpc/<SAML_AppBundleName>/oauth/callback
https://system-admin.okta-emea.com/admin/app/cpc/<SAML_AppBundleName>/oauth/callback

<SAML_AppBundleName>
はOkta管理コンソールのProfile Editorを参照します。- このとき、サブドメインにハイフン「-」が入っている場合、プロファイルエディターの変数のサブドメイン部分のハイフンは削除されています。
<SAML_AppBundleName>
には「-」を入れてください。
- このとき、サブドメインにハイフン「-」が入っている場合、プロファイルエディターの変数のサブドメイン部分のハイフンは削除されています。

8. 認可コールバックURLを追加したら、「続ける」をクリックしてクライアントIDとクライアントシークレットを控えます。

- クライアントシークレットは半年〜1年を選択します。

アプリへのプロビジョニングをセットアップする
- 「Apple Business Manager SCIM」アプリケーションのGeneral(一般)タブから、ProvisioningをSCIMに変更します。

2. Provisioning画面で以下を入力します。
- SCIM connector base URL(SCIMコネクターベースURL):
https://federation.apple.com/feeds/business/scim
- Unique identifier field for users(ユーザーの一意識別子フィールド):
userName
- Supported provisioning actions(サポートされるプロビジョニングアクション):以下をチェック
- 「Import New Users and Profile Updates(新規ユーザーとプロファイル更新をインポート)」
- 「Push New Users(新規ユーザーをプッシュ)」
- 「Push Profile Updates(プロファイル更新をプッシュ)」
- Authentication Mode(認証モード):
OAuth 2
を選択 - Access token endpoint URI(アクセストークンエンドポイントURI):
https://appleid.apple.com/auth/oauth2/v2/token
- Authorization endpoint URI(認可エンドポイントURI):
https://appleid.apple.com/auth/oauth2/v2/authorize
- Client ID(クライアントID):ABM「ディレクトリ同期」のクライアントID
- Client Secret(クライアントシークレット):ABM「ディレクトリ同期」のクライアントシークレット

3. 「Save(保存)」後、「Authenticate with Apple Business Manager SCIM」より接続をします。

- アクセスの許可画面に遷移します。

- 接続が成功すると、ABMの「管理対象Apple Account」画面が「接続済み」になります。

4. Provisioningの「To App」画面にて以下を有効化し「Save(保存)」します。これで設定は完了です。
- Enable Create Users(ユーザーの作成を有効化)
- Update User Attributes(ユーザー属性を更新)
- Deactivate Users(ユーザーを非アクティブ化)

プロビジョニングとログインを確認する
- Okta管理コンソールより、「Apple Business Manager OIDC」と「Apple Business Manager SCIM」に検証ユーザーをアサインします。
- https://account.apple.com/sign-in から検証ユーザーでログインします。

- Okta認証にリダイレクトされることを確認します。

3. ログインし、アカウントがプロビジョニングされていることを確認します。

4. ABMのユーザー画面で認証「連携済み」、ソース「カスタム同期」となっていることを確認します。

まとめ
本記事では、OktaとApple Business Manager(ABM)を連携させ、管理対象Apple IDのプロビジョニングと認証を自動化する手順を解説しました!
- 連携により可能になること
OktaからABMへのユーザープロビジョニングが自動化され、ユーザーはOkta経由でApple IDにログインできるようになります。これにより、ID管理の一元化と利便性の向上が期待できます。 - 導入の前提条件と注意点
OktaとABM双方で管理者権限が必要であり、特にABMでのドメイン登録とドメインロックが重要かつ厳しい要件です。また、クライアントシークレットの定期更新など運用面の管理も必要です。 - 設定の概要
Okta管理コンソールでのOIDCアプリ統合設定、ABMでのカスタムIDプロバイダー登録、SAMLによるディレクトリ同期設定、SCIMによるプロビジョニング設定を段階的に行います。
Apple IDをしっかり管理することで、社用のMacやiPhoneを使うみなさんがもっと快適に過ごせるようになると思います。
ぜひ今回の方法を試してみてくださいね!