汎用MDMを使用してPSSOのデバイス構成プロファイルを構成する
このガイドでは、モバイルデバイス管理(MDM)ソリューションを使用して、macOS用プラットフォームシングルサインオン(プラットフォームSSO)を構成するための一般的な手順を説明します。Microsoft Intune、Jamf ProまたはWorkspace ONEを使用している場合、MDMの該当するガイドを参照してください。
このガイドは、カスタム構成プロファイルと管理対象アプリの構成のデプロイメントに対応したKandjiやMosyleなどのMDMを利用する管理者を対象としています。これらのタイプのプロファイルの作成とデプロイに関する詳細なガイダンスについては、MDMソリューションのドキュメントを参照してください。
PSSOのメリット、前提条件、バージョンの互換性に関する詳しい説明については、「 プラットフォームシングルサインオン(プラットフォームSSO)用macOS 」を参照してください。
開始する前の確認事項
-
デバイスアクセス証明書をmacOSデバイスに構成してデプロイしたことを確認します。
-
ユーザーのデバイスはmacOS 14 Sonoma以降で実行している必要があります。
-
Okta Admin ConsoleからOkta Verify PKGファイルをダウンロードします。「用Okta VerifyのダウンロードmacOS 」を参照してください。
このタスクを開始する
PSSOを使用するには、次のペイロードを含む構成プロファイルを作成してデプロイします。
-
コンピューターレベルでデプロイされた、拡張可能なシングルサインオンプロファイル。
-
関連するドメインのペイロード。これは、シングルサインオン(SSO)拡張機能と同じプロファイル内にすることができます。
-
orgのURL、ユーザー名、クライアントID、プラットフォームSSOプロトコルバージョンが含まれる管理対象アプリ構成。ユーザー名とクライアントIDはデスクトップパスワード同期に固有です。ユーザー名とクライアントIDのスコープをSSO拡張ドメインのみに設定します。Oktaドメインごとに個別のエントリを追加します。
ほとんどのMDMソリューションでは、これらのプロファイルを含むカスタム.plistファイルをアップロードできます。
このガイドでは、orgのURL(たとえばhttps://customerorg.okta.com)を指定するときは、毎回同じorg URLを使用します。
カスタムドメインを構成した場合には、そのカスタムドメインのURLを使用します。
SSOプロファイルを構成する
SSO拡張機能はmacOSログインウィンドウに拡張されます。これにより、ユーザーは自分のOkta資格情報を使ってコンピューターのロック解除とサインインを行うことができます。ローカルアカウントのパスワードが自動的に同期されるため、ローカルパスワードとOktaパスワードが同じになります。
これは、PSSOを有効化し、認証でOkta Verifyを使用するようにmacOSに指示するプライマリペイロードです。
|
キー |
値 |
|---|---|
|
ペイロードタイプ(Payload type) |
|
|
拡張機能の識別子(Extension Identifier) |
|
|
チーム識別子(Team Identifier) |
|
|
タイプ |
|
|
認証方法(Authentication method) |
|
|
共有デバイスキーを使用(Use Shared Device Keys) |
|
|
プラットフォームSSOの使用(Use Platform SSO) |
|
|
設定時に登録を有効にする(Enable registration during setup) |
macOS 26 TahoeでプラットフォームSSO 2.0を使用しているOrgの場合は、これを |
|
アカウント表示名(Account Display Name) |
アカウントの通知や認証要求で使用される表示名。 これは特定のユーザーアカウントレベルではなくシステムレベルで設定されるため、この値はすべてのユーザーに表示されます。 |
|
URL(URLs) |
次のパスを含むOkta orgのURLを追加します。
例:
|
汎用MDMの例
<key>PayloadType</key>
<string>com.apple.extensiblesso</string>
<key>PlatformSSO</key>
<dict>
<key>AuthenticationMethod</key>
<string>Password</string>
<key>UseSharedDeviceKeys</key>
<true/>
</dict>
<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>
<string>https://customerorg.okta.com/device-access/api/v1/nonce</string>
<string>https://customerorg.okta.com/oauth2/v1/token</string>
<string>https://customerorg.okta.com/v1/auth/device-sign</string>
</array>
Kandjiの例
<?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>
<string>authsrv:customerorg.okta.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>AuthenticationMethod</key>
<string>Password</string>
<key>UseSharedDeviceKeys</key>
<true/>
</dict>
<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>
<string>https://customerorg.okta.com/device-access/api/v1/nonce</string>
<string>https://customerorg.okta.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>
関連ドメインを構成する
このペイロードは、Okta org URLをOkta Verifyアプリに安全にリンクします。
|
キー |
値 |
|---|---|
|
ペイロード |
|
|
アプリケーション識別子(Application Identifier) |
|
|
関連ドメイン(Associated Domains) |
Okta orgのURLドメインを追加します(例: 各アプリの識別子には、関連するドメインが必要です。 |
汎用MDMの例
<key>PayloadType</key>
<string>com.apple.associated-domains</string>
<key>AssociatedDomains</key>
<array>
<dict>
<key>ApplicationIdentifier</key>
<string>B7F62B65BN.com.okta.mobile</string>
<key>AssociatedDomains</key>
<array>
<string>authsrv:customerorg.okta.com</string>
</array>
</dict>
<dict>
<key>ApplicationIdentifier</key>
<string>B7F62B65BN.com.okta.mobile.auth-service-extension</string>
<key>AssociatedDomains</key>
<array>
<string>authsrv:customerorg.okta.com</string>
</array>
</dict>
</array>
<!-- Other required payload keys -->
Kandjiの例
<?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>OktaVerify.OrgUrl</key>
<string>https://customerorg.okta.com</string>
<key>OktaVerify.PasswordSyncClientID</key>
<!-- replace YOUR_CLIENT_ID with your Desktop Password Sync app Client ID -->
<string>YOUR_CLIENT_ID</string>
<key>PlatformSSO.ProtocolVersion</key>
<string>2.0</string>
<!-- optional keys-->
<key>OktaVerify.EnrollmentOptions</key>
<string>SilentEnrollmentEnabled</string>
<key>OktaVerify.ReportDiagnostics</key>
<true/>
<key>OktaVerify.UserPrincipalName</key>
<string>username@domain.com</string>
<!-- optional keys-->
<key>PayloadDescription</key>
<string>Configures Okta Verify settings</string>
<key>PayloadDisplayName</key>
<string>Okta Verify configuration</string>
<key>PayloadIdentifier</key>
<string>DEB5863A-E503-468C-A3DE-D90479F1E10A</string>
<key>PayloadOrganization</key>
<string>CUSTOMER NAME</string>
<key>PayloadType</key>
<string>com.okta.mobile</string>
<key>PayloadUUID</key>
<string>1D89FEA8-BAFE-42F5-9393-634BE23009D8</string>
<key>PayloadVersion</key>
<integer>1</integer>
</dict>
<dict>
<key>OktaVerify.OrgUrl</key>
<string>https://customerorg.okta.com</string>
<key>OktaVerify.PasswordSyncClientID</key>
<!-- replace YOUR_CLIENT_ID with your Desktop Password Sync app Client ID -->
<string>YOUR_CLIENT_ID</string>
<!-- optional keys-->
<key>OktaVerify.EnrollmentOptions</key>
<string>SilentEnrollmentEnabled</string>
<key>OktaVerify.ReportDiagnostics</key>
<true/>
<key>OktaVerify.UserPrincipalName</key>
<string>username@domain.com</string>
<!-- optional keys-->
<key>PayloadDescription</key>
<string>Configures Okta Verify settings</string>
<key>PayloadDisplayName</key>
<string>Okta Verify (auth service) configuration</string>
<key>PayloadIdentifier</key>
<string>E5F1356E-3B04-43F7-8E8C-2213F7D74B13</string>
<key>PayloadOrganization</key>
<string>CUSTOMER NAME</string>
<key>PayloadType</key>
<string>com.okta.mobile.auth-service-extension</string>
<key>PayloadUUID</key>
<string>6764E8E4-0A37-4206-96E2-A73B2DFA5673</string>
<key>PayloadVersion</key>
<integer>1</integer>
</dict>
</array>
<key>PayloadDescription</key>
<string>Configures settings</string>
<key>PayloadDisplayName</key>
<string>Okta Verify Configuration</string>
<key>PayloadIdentifier</key>
<string>com.customer-name.profiles.oktaverify</string>
<key>PayloadOrganization</key>
<string>CUSTOMER NAME</string>
<key>PayloadScope</key>
<string>System</string>
<key>PayloadType</key>
<string>Configuration</string>
<key>PayloadUUID</key>
<string>9A641D93-471C-44D7-8B54-264E842A12C8</string>
<key>PayloadVersion</key>
<integer>1</integer>
</dict>
</plist>
カスタム設定ファイルを構成する
これらのペイロードファイルは、多くの場合管理対象アプリ構成と呼ばれ、macOS用のOkta Verifyアプリに特定のOkta設定を提供します。
プラットフォームSSOが機能するには、次の優先ドメインのそれぞれに優先ファイルを作成してデプロイ必要があります。
-
com.okta.mobile -
com.okta.mobile.auth-service-extension -
com.okta.deviceaccess.servicedaemon:任意。デバイスバウンドSSOでのみ必要です。 -
com.apple.preference.security:任意。パスワードのリセットをブロックする場合にのみ必要です。
com.okta.mobile
次の内容のcom.okta.mobileという名前のテキストファイルを作成して保存します。Okta VerifyまたはOkta FastPass向けに個のファイルがすでに作成されている場合は、プラットフォームSSOで再作成する必要はありません。
<key>PayloadType</key>
<string>com.okta.mobile</string>
<key>OktaVerify.OrgUrl</key>
<string>https://customerorg.okta.com</string>
<key>OktaVerify.UserPrincipalName</key>
<string>$USERNAME</string>
次の項目を特定のorg構成に置き換えます。
-
https://customerorg.okta.comはOkta orgのURLです。 -
$USERNAMEは、ユーザーがPSSOに登録するときにOktaユーザー名で自動入力されるオプションの値です。値を指定しない場合、ユーザーはサインイン時にユーザー名を入力する必要があります。
com.okta.mobile.auth-service-extension
次の内容のcom.okta.mobile.auth-service-extensionという名前のテキストファイルを作成して保存します。
<key>PayloadType</key>
<string>com.okta.mobile.auth-service-extension</string>
<key>OktaVerify.OrgUrl</key>
<string>https://customerorg.okta.com</string>
<key>OktaVerify.PasswordSyncClientID</key>
<string>your-client-ID</string>
<key>OktaVerify.UserPrincipalName</key>
<string>$USERNAME</string>
<key>PlatformSSO.ProtocolVersion</key>
<string>2.0</string>
次の項目を特定のorg構成に置き換えます。
-
https://customerorg.okta.comはOkta orgのURLです。 -
$USERNAMEは、ユーザーがPSSOに登録するときにOktaユーザー名で自動入力されるオプションの値です。値を指定しない場合、ユーザーはサインイン時にユーザー名を入力する必要があります。 -
your-client-IDは、プラットフォームSSOアプリの作成中にコピーしたクライアントID(Client ID) です。この値は、構成された用プラットフォームシングルサインオンアプリmacOS の認証(Authentication)タブから取得できます。
com.okta.deviceaccess.servicedaemon
次の内容のcom.okta.deviceaccess.servicedaemonという名前のテキストファイルを作成して保存します。
<key>PayloadType</key>
<string>com.okta.deviceaccess.servicedaemon</string>
<key>OktaJoinEnabled</key>
<true/>
このプロファイルファイルは任意で、デバイスバウンドSSOで使用されます。「デバイスバウンドSSOをユーザーデバイスにデプロイする」を参照してください。
com.apple.preference.security
このプロファイルでは、ローカルアカウントのパスワードを変更する機能が無効になります。
パスワードはOktaと同期されるため、ユーザーはローカルでパスワードを変更できません。ユーザーがパスワードを変更するには、Oktaパスワードを変更してからコンピューターのロック画面で同期する必要があります。詳細については、Appleのセキュリティ設定に関するドキュメントを参照してください。
次の内容のcom.apple.preference.securityという名前のテキストファイルを作成して保存します。
<key>PayloadType</key>
<string>com.apple.preference.security</string>
<key>dontAllowPasswordResetUI</key>
<true/>
以下に、Kandji用のcom.apple.preference.security構成ファイルの例を示します。
<plist version="1.0">
<dict>
<key>PayloadContent</key>
<array>
<dict>
<key>dontAllowPasswordResetUI</key>
<true/>
<key>PayloadIdentifier</key>
<string>com.customer-name.profiles.dontAllowPasswordResetUI</string>
<key>PayloadType</key>
<string>com.apple.preference.security</string>
<key>PayloadUUID</key>
<string>d99bb019-1010-447f-8fed-8f223cc56be3</string>
<key>PayloadVersion</key>
<integer>1</integer>
</dict>
</array>
<key>PayloadDisplayName</key>
<string>Restrict Local Password Reset for Okta PSSO extension</string>
<key>PayloadIdentifier</key>
<string>com.customer-name.restrictLocalPasswordReset</string>
<key>PayloadType</key>
<string>Configuration</string>
<key>PayloadUUID</key>
<string>b44b6a04-6527-4333-1010-46422e8a5844</string>
<key>PayloadVersion</key>
<integer>1</integer>
</dict>
</plist>
プロファイルをデプロイして確認する
MDMソフトウェアを使用して、スコープ内のすべてのコンピューターにプロファイルを配布するか、新たに割り当てられたデバイスのみに配布します。
デバイス管理プロファイルを作成して配布すると、管理対象ユーザーは自分のローカルmacOSパスワードとOktaパスワードを同期できるようになります。2つのパスワードを同期させるには登録が必要であるというシステム通知がユーザーに表示されます。
デスクトップパスワード同期は、登録プロセスの一部としてOkta FastPassのセットアップも行います。ユーザーは、すでにOkta FastPassを有効にしているかもしれません。Okta FastPassの生体認証が有効な場合、デスクトップパスワード同期の登録フローでは、Okta FastPassを正常にセットアップするためにTouch IDをユーザーに要求します。
macOSデバイスでプロファイルのデプロイメントを確認するには:
-
システム設定(System Settings)アプリを開きます。
-
に移動します。
-
優先ドメインごとにデバイス管理プロファイルが表示されることを確認します。
Okta Verifyをデプロイする
最後に、MDMソフトウェアを使用して、登録済みのmacOSデバイスにOkta Verifyアプリをデプロイします。
次の手順