SaaS その他

Oktaから管理対象Apple IDをプロビジョニングしてみた!

はじめに

ごきげんよう、IDチームのわかなです!

OktaとApple Business Managerの統合が早期アクセスより実行できるため、試してみました!

なにができるの?

OktaからApple Business Managerへユーザープロビジョニングができるようになります。
また、プロビジョニングしたユーザーはApple IDにログインする際にOkta経由でログインができるようになります。

前提条件と注意点

  1. Oktaの特権管理者及びABMにて管理者である必要があります。
  2. ABMにてドメインを登録する必要があります。(※特にドメイン登録の要件は厳しいため、注意が必要です
    • TXTレコードを登録し、ドメインをロックする
    • すでにドメインでアカウントを作っているユーザーは、個別に届くメールから、管理対象Appleアカウントとして承認するか、個人のメールアドレスに移行する必要がある
  3. ABMのクライアントシークレットを定期的(半年〜1年)に更新する必要があります。
    • MDMやVPPの証明書と同じ周期で管理すると忘れなさそうです。
  4. ABM締め出し対策の為、@xxx.appleid.comの管理者アカウントを用意しておくと良いです。

機能の有効化

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

連携認証のセットアップ

Okta管理コンソールで認証アプリケーションを設定する

  1. Applications(アプリケーション)より、「Create App Integration(アプリ統合を作成)」をクリックします。
  2. サインイン方式として「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.managessf.readそれぞれの「Grant(付与)」をクリックします。

5. 実行者のOktaアカウントをアプリケーションにアサインします。

6. General(一般)タブより、次のステップで利用するクライアントIDとクライアントシークレットを控えておきます。

Apple Business Managerで認証をする

  1. 環境設定 > 管理対象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間のディレクトリ同期をセットアップする

  1. Okta管理コンソールのApplications(アプリケーション)より、「Create App Integration(アプリ統合を作成)」をクリックします。
  2. サインイン方式として「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年を選択します。

アプリへのプロビジョニングをセットアップする

  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(ユーザーを非アクティブ化)

プロビジョニングとログインを確認する

  1. Okta管理コンソールより、「Apple Business Manager OIDC」と「Apple Business Manager SCIM」に検証ユーザーをアサインします。
  2. 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を使うみなさんがもっと快適に過ごせるようになると思います。
ぜひ今回の方法を試してみてくださいね!

わかなだょ〜

Identityチームの吉澤和香奈です!
みんなに幸せをお届けする楽しいやつを目指しています!
趣味は飲酒、ゲーム、筋トレ(BIG3/パワーリフティング)、サッカー観戦(東京V、ときどきFC東京の味スタエンジョイ勢)、斧投げ(ほんもののマサカリ!)です!StrayKidsが好きです!