macOSのジャストインタイムローカルアカウント作成

ジャストインタイムローカルアカウント作成は、ユーザーがmacOSのログイン画面でOktaのユーザー名とパスワードを使用して、macOSコンピューターにアカウントを作成できるようにします。管理者は、テナントにいるOktaユーザーのアカウント作成プロセスを素早く処理することができます。これは、複数のユーザーに対応する共有のデバイスやワークステーションでは特に便利です。

この機能は、AppleのIDフレームワークの一部であるプラットフォームシングルサインオン(プラットフォームSSO)を使用します。

開始する前の確認事項

  1. Oktaユーザー名がメール形式であることを確認します。Oktaユーザー名のカスタム文字制限を作成するを参照してください。「+」など、macOSが対応していない文字はユーザー名に表示されません。

  2. Oktaユーザーの氏名が入力されていることを確認してください。macOSアカウントの詳細は、この情報を使用して生成されます。

  3. 組織がユーザー名に異なる形式を使用している場合には、ユーザー名をマッピングするためにカスタム属性を作成する必要があります。

    デフォルトでは、Okta usernamemacOSのユーザー名として使用されます。同様に、結合されたOkta First name + Family name値がmacOSのユーザー表示名に使用されます。

    ただし、orgでmacOSのアカウント名と表示名に異なる形式を使用している場合は、これらのマッピング用にカスタム属性を作成する必要があります。

    デフォルト値を上書きするには、プロファイルエディターを使ってアプリのカスタム属性を追加してマッピングします。

    1. まだ済んでいない場合は、Admin ConsoleからmacOSのプラットフォームシングルサインオン(Platform Single Sign-on for macOS )アプリを追加します。

    2. Admin Consoleディレクトリ(Directory) > プロファイルエディター に進みます。

    3. macOSのプラットフォームシングルサインオン(Platform Single Sign-on for macOS)アプリを検索して開きます。

    4. 属性を追加(Add Attribute)をクリックします。

    5. macOSユーザー名として使用する文字列属性を追加します。

      1. 表示名(Display name)および変数名(Variable Name)フィールドをmacOSAccountUsernameに設定します。

      2. 必須属性(Attribute required)(Yes)フィールドのはい(Yes)(Attribute required)チェックボックスを有効にします。

      3. 保存してほかにも追加(Save and Add Another)をクリックします。

    6. macOSAccountFullNameという別の文字列属性を追加します。Oktaでは、この属性をmacOSの表示名として使用します。

    7. 保存(Save)をクリックします。

    8. マッピング(Mappings)ユーザーマッピングを構成(Configure User mappings)の順でクリックします。

    9. ユーザープロファイルのマッピング(User Profile Mappings)ダイアログで、OktaユーザーをmacOSのプラットフォームシングルサインオンに(Okta User to Platform Single Sign-on for )macOS タブを選択します。

    10. 次の属性マッピングを入力します。

      • user.loginmacOSAccountUsername

      • user.displayNamemacOSAccountFullName

    11. マッピングを保存(Save Mappings)をクリックします。

    これらのフィールドをさらに変更する必要がある場合は、別のOkta属性を選択するか、Okta式言語を使用してフィールドに式を追加します。アプリ、ディレクトリ、IDプロバイダーにカスタム属性を追加するProfile EditorでOkta属性をアプリの属性にマッピングするを参照してください。

このタスクを開始する

構成に関する問題を回避するために、次の順でタスクを実行します。

  1. デバイスアクセス証明書を構成します。JITローカルアカウントの作成には、Simple Certificate Enrollment Protocol(SCEP)を使用した証明書の登録が必要です。
  2. ジャストインタイムローカルアカウント作成にデバイス管理プロファイルを構成します。これらの値は、JITローカルアカウント作成を使用する前に、プラットフォームSSOプロファイルに追加します。
  3. JITローカルアカウント作成を使用してmacOSデバイスを構成し、ユーザーに提供します。

デバイスアクセス証明書を構成する

macOSのジャストインタイムローカルアカウント作成には、SCEPを使用してクライアント証明書を登録する必要があります。モバイルデバイス管理(MDM)ソフトウェアがこれらの証明書をデプロイします。APIエンドポイントへのアクセス権を付与し、APIエンドポイントを呼び出す際にデバイスの正体をOktaに明かすために使用されます。

デバイスアクセス証明書を参照して手順を完了し、こちらに戻ってJITローカルアカウント作成の有効化を続けます。

ジャストインタイムローカルアカウント作成にデバイス管理プロファイルを構成する

JITローカルアカウント作成を使用するには、既存のMDMプロファイルで一部の構成を変更する必要があります。これらの手順は、デバイス管理にJamf Proを使用していることを前提としています。異なるMDMソリューションを使用している場合には、フィールドの名称が異なるかもしれません。

  1. MDMでPlatformSSOプロファイルを見つけます。

  2. プロファイルを編集(Edit)して次を有効にします。

    • Create New User at Login(ログイン時に新規ユーザーを作成): EnableCreateUserAtLogin

    • 新規ユーザー認可モード(New User Authorization Mode):この値は、作成されたアカウントの権限タイプを決定します。アカウントをAdminまたはStandardに設定します。

    • Use Shared Device Keys(共有デバイスキーを使用): UseSharedDeviceKeys

    • User Mapping(ユーザーマッピング):

      • macOSAccountUsernameAccountNameとして設定します。

      • macOSAccountFullNameFullNameとして使用します。

    • 登録トークン(Registration Token):ランダムな値を入力します。プロファイルはトークンの代わりに証明書を使用するため、この値は使用されませんが、フィールドには入力が必要です。

  3. com.okta.mobile.auth-service-extensionドメインのデバイス管理プロファイルを見つけます。

  4. プロファイルを編集(Edit)して次の内容を追加します。

    <key>PlatformSSO.ProtocolVersion</key>
    <string>2.0</string>
  5. プロファイルを保存します。

  6. 更新されたプロファイルをユーザーにプッシュするオプションが示されるときは、ここで行います。

参考のために、Jamf PlatformSSOプロファイルのサンプルにあるJITローカルアカウント作成パラメーターを確認してください。

JITローカルアカウント作成に新しいデバイスをセットアップする

JITローカルアカウント作成を使用してプロビジョニングされたデバイスまたは仮想マシンは、以下の要件を満たされなけれなりません。

  • コンピューターがmacOS 14 Sonoma以降で動作している。

  • ブートストラップトークン対応のMDMソリューションでデバイスが登録されている。「Appleのブートストラップトークン機能を手動で活用する」 を参照してください。

  • セットアップアシスタントが完了し、初期のローカル管理者アカウントが作成されている。

  • プラットフォームSSOのMDMプロファイルがコンピューターにプッシュされている。

  • SCEPを使用して登録した証明書がコンピューターに存在している。

  • Okta Verify for macOSのバージョン9.25.0以降がインストールされている。

  • ユーザーがOkta内に存在している。

デバイス要件が満たされている場合、IT管理者はコンピューター上で以下の手順を完了させる必要があります。

  1. デバイスの管理者アカウントにサインインします。デバイスがデバイスアクセス証明書を使用して暗黙に登録され、デバイスIDの認証とプラットフォームSSOキーの登録が行われます。

  2. デバイスが正常に登録されたことを確認します。

    • 登録が必要(Registration Required)という通知が表示され、ユーザーに資格情報でのサインインが求められます。

    • macOS ターミナル(Terminal)ウィンドウでapp-sso platform -sを実行します。正常に実行された場合、Device Configuration.registrationCompleted = trueが返されし、Login Configurationオブジェクトはnullではありません。

  3. デバイスが正常に登録されなかった場合には、Okta Verifyログで失敗の原因を確認してください。問題を解消したら、サインアウトしてからもう一度サインインして、デバイスの登録プロセスを実行し直します。

  4. 任意。デスクトップパスワード同期の登録を完了させます(IT管理者のアカウントがOkta FastPassに登録されます)。

  5. macOSデバイスで、システム環境設定(System Settings) > ユーザーとグループ(Users & Groups)を開きます。コンピューター上に類似した名前でアカウントが重複(j.smithjl.smithなど)していないことを確認します。重複している場合には、余分なユーザーを削除して、ホームディレクトリが/Users/から削除されたことを確認します。

  6. システム環境設定(System Settings) > ロック画面(Lock Screen) > ログインオプション(When Switching User) > ログイン時の表示(Login window shows) > 名前とパスワード(Name and Password)を使用します。この設定は、macOSのログイン画面にユーザー名が表示されるようにします。

これで、エンドユーザーがコンピューターを使用する準備が整いました。

Jamf PlatformSSOプロファイルのサンプル

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>PayloadContent</key>
    <array>
        <dict>
            <key>Configuration</key>
            <array>
                <dict>
                    <key>ApplicationIdentifier</key>
                    <string>B7F62B65BN.com.okta.mobile.auth-service-extension</string>
                    <key>AssociatedDomains</key>
                    <array>
                        <!-- replace accuhive.asqula.com with your tenant address -->
                        <string>authsrv:accuhive.asqula.com</string>
                    </array>
                </dict>
            </array>
            <key>PayloadDisplayName</key>
            <string>Associated Domains for Okta Verify</string>
            <key>PayloadIdentifier</key>
            <string>F65C9B21-13AD-4F46-86E5-C3352E7D97B6</string>
            <key>PayloadOrganization</key>
            <string>CUSTOMER NAME</string>
            <key>PayloadType</key>
            <string>com.apple.associated-domains</string>
            <key>PayloadUUID</key>
            <string>F65C9B21-13AD-4F46-86E5-C3352E7D97B6</string>
            <key>PayloadVersion</key>
            <integer>1</integer>
        </dict>
        <dict>
              <key>PlatformSSO</key>
                        <dict>
                            <key>AccountDisplayName</key>
                            <string>Actor</string>
                            <key>AuthenticationMethod</key>
                            <string>Password</string>
                            <key>EnableCreateUserAtLogin</key>
                            <true/>
                            <key>TokenToUserMapping</key>
                            <dict>
                                <key>AccountName</key>
                                <string>macOSAccountUsername</string>
                                <key>FullName</key>
                                <string>macOSAccountFullName</string>
                            </dict>
                            <key>UseSharedDeviceKeys</key>
                            <true/>
                        </dict>
                        <key>RegistrationToken</key>
                        <string>********</string>
            <key>ExtensionIdentifier</key>
            <string>com.okta.mobile.auth-service-extension</string>
            <key>Hosts</key>
            <array/>
            <key>TeamIdentifier</key>
            <string>B7F62B65BN</string>
            <key>Type</key>
            <string>Redirect</string>
            <key>URLs</key>
            <array>
                <!-- replace accuhive.asqula.com with your tenant address -->
                <string>https://accuhive.asqula.com/device-access/api/v1/nonce</string>
                <string>https://accuhive.asqula.com/oauth2/v1/token</string>
            </array>
            <key>PayloadDisplayName</key>
            <string>Okta Verify Sign-On Extensions Payload</string>
            <key>PayloadIdentifier</key>
            <string>77058B08-6943-4DEC-899A-721F55B4EEE8</string>
            <key>PayloadOrganization</key>
            <string>CUSTOMER NAME</string>
            <key>PayloadType</key>
            <string>com.apple.extensiblesso</string>
            <key>PayloadUUID</key>
            <string>77058B08-6943-4DEC-899A-721F55B4EEE8</string>
            <key>PayloadVersion</key>
            <integer>1</integer>
        </dict>
    </array>
    <key>PayloadDescription</key>
    <string>Okta PSSO extension configuration</string>
    <key>PayloadDisplayName</key>
    <string>Okta PSSO extension</string>
    <key>PayloadIdentifier</key>
    <string>com.customer-name.profiles.ssoextension</string>
    <key>PayloadOrganization</key>
    <string>CUSTOMER NAME</string>
    <key>PayloadScope</key>
    <string>System</string>
    <key>PayloadType</key>
    <string>Configuration</string>
    <key>PayloadUUID</key>
    <string>D78FE406-0C61-4007-8C51-FFA5FDE5F54B</string>
    <key>PayloadVersion</key>
    <integer>1</integer>
</dict>
</plist>