Google Identity との統合

Jamf Connect を Google Cloud Identity と統合するには、ログインウィンドウとメニューバー App の両方を使用するための 2 つの個別の統合手順が必要です:

ログインウィンドウ用の OpenID Connect 統合の作成

Jamf Connect は、OpenID Connect 認証プロトコルを使用して、ローカルアカウントを作成し、ネットワーク認証を介してユーザをログインさせます。

メニューバー App のパスワード同期用の LDAP 証明書の作成と展開

Jamf Connect は、Google のセキュア LDAP サービスを利用した LDAP 認証を使用して、ユーザのネットワークパスワードが Mac のローカルパスワードと一致するかどうかを確認します。

ログインウィンドウ用 OpenID Connect アプリケーション統合の作成

app 用の OAuth 2.0 認証情報を作成することで、Jamf Connect を Google ID と統合する必要があります。

  1. Google Cloud にログインします。
  2. 左上隅にある Navigation (ナビゲーション) メニューアイコンをクリックします。
  3. APIs & Services (API とサービス) > Credentials (認証情報) をクリックします。
    注:

    プロジェクトを作成して、それを組織に割り当てるように指示される場合があります。

  4. Create credentials (認証情報の作成) ポップアップメニューから OAuth client ID (OAuth クライアント ID) を選択します。
  5. 「Create OAuth client ID (OAuth クライアント ID の作成)」ページで以下を実行します。
    1. 「Application type (アプリケーションタイプ)」で Web application (Web アプリケーション) を選択します。
    2. Name (名前) フィールドに Jamf Connect または類似の内容を入力します。
    3. Authorized redirect URIs (承認されたリダイレクト URI) フィールドに「https://127.0.0.1/jamfconnect」などの有効な URI を入力します。
  6. Create (作成) をクリックします。

Jamf Connect のクライアント認証情報が正常に作成され、クライアント ID とクライアントシークレットを含んだダイアログが表示されます。

必ず、クライアント ID とクライアントシークレットをクリップボードにコピーしてください。これらの値を Jamf Connect 構成プロファイルに含める必要があります。

重要:

このほか、Jamf Connect がユーザの Google アカウントのどの情報にアクセスするかを説明する、Google のユーザ同意画面を設定する必要もあります。この画面を構成するには、API & Services (API とサービス) > Credentials (認証情報) > OAuth consent screen (OAuth 同意画面) に移動します。

Google Cloud LDAP クライアントからの PKCS12 (.p12) キーストアファイルの生成

Google のセキュア LDAP サービスは、LDAP クライアントがセキュア LDAP で認証を行う際の主要な認証メカニズムとして機能する証明書を生成します。

この証明書は、Jamf Connect が Mac コンピュータ上でユーザの Google パスワードとローカルパスワードを同期できるようにするために使用されます。

要件
  1. Google Admin Console にログインします。
  2. AppsLDAP の順にクリックします。
  3. Jamf Pro と統合する LDAP クライアントを選択します。

    選択した LDAP クライアントのサービススイッチステータスは On (オン) である必要があります。

  4. Authentication (認証) をクリックします。
  5. Jamf Pro と統合する際に使用する証明書ファイルをダウンロードします。
  6. ダウンロードしたアーカイブを解凍します。出力には、証明書 (.crt) ファイルと秘密鍵 (.key) ファイルが含まれている必要があります。
  7. .p12 キーストアファイルを生成するには、以下のコマンドを実行します:
    openssl pkcs12 -export -out /path/to/generated/keystore.p12 -inkey /path/to/saved/privatekey.key -in /path/to/saved/certificate.crt
  8. プロンプトが表示されたら、パスワードを作成します。

    パスワードはキーストアファイルにアクセスするときに使用するパスワードです。このパスワードは安全な場所に保管してください。

これで、生成された .p12 キーストアファイルを Jamf Pro にアップロードしたり、コンピュータのシステムキーチェーンにローカルに追加できます。

Jamf Pro を使用した .p12 キーストアファイルの展開

Jamf Connect がユーザパスワードを同期できるようにするには、Google Admin Console の LDAP クライアントから生成された .p12 キーストアファイルをコンピュータにインストールする必要があります。

Jamf Pro を使用して、構成プロファイルの証明書ペイロードにファイルをアップロードすることにより、このファイルを展開できます。

  1. Jamf Pro で、サイドバーのトップの Computers (コンピュータ) をクリックします。
  2. サイドバーの Configuration Profiles (構成プロファイル) をクリックします。
  3. New (新規) をクリックします。
  4. 構成プロファイルの基本設定を構成するには、一般ペイロードを使用します。
  5. Certificates (証明書) ペイロードで、Configure (構成) をクリックします。
  6. 証明書に名前を付けます。
  7. 生成された .p12 ファイルをアップロードし、LDAP キーストアのパスワードを入力します。
  8. Allow all apps access (すべての App にアクセスを許可) を選択します。
  9. 保存 をクリックします。

構成プロファイルは、ターゲットコンピュータに展開されます。

.p12 キーストアファイルの手動インストール

Jamf Connect がユーザパスワードを同期できるようにするには、Google Admin Console の LDAP クライアントから生成された .p12 キーストアファイルをコンピュータにインストールする必要があります。

このファイルは、キーチェーンアクセスを介してシステムキーチェーンに追加することで手動でインストールできます。

  1. Keychain Access (キーチェーンアクセス) を開き、.p12 ファイルを System Keychain (システムキーチェーン) ペインにドラッグ&ドロップします。
  2. プロンプトが表示されたら、キーストアファイルの生成時に作成した LDAP クライアントキーストアのパスワードを入力します。
  3. System Keychain (システムキーチェーン) ペインで、My Certificates (マイ証明書) タブをクリックします。
  4. LDAP 証明書の信頼設定を編集して、証明書を常に信頼できるようにします:
    1. LDAP 証明書を右クリックし、Evalute (評価)"Your-Certificate-Name"... (「お客様の証明書の名前...」) をクリックして、Continue (続行) をクリックします。
    2. Show Certificate... (証明書を表示...) をクリックします。
    3. Trust (信頼する) エキスパンダを展開し、ポップアップメニューから Always Trust (常に信頼する) を選択します。
  5. すべてのアプリケーションに証明書へのアクセスを許可:
    1. LDAP 証明書の横にある展開用三角マークをクリックします。
      LDAP 秘密鍵が表示されます。
    2. 秘密鍵をダブルクリックします。
      Private Key (秘密鍵) ウィンドウが表示されます。
    3. Allow all applications to access this item (すべてのアプリケーションにこの項目へのアクセスを許可) が選択されていることを確認します。
      注:

      ldapsearch のみにアクセスを制限したい場合は、アクセス権のあるアプリケーションのリストに /usr/bin/ldapsearch を追加します。

.p12 Keystore ファイルと接続のテスト

  1. 以下を使用して、ldapsearch コマンドラインツールで構成をテストします。
    LDAPTLS_IDENTITY="LDAP Client" ldapsearch -uLLL -w USERPASSWORDGOESHERE -D 'USERNAME@GOOGLEDOMAIN.EXT' -H ldaps://ldap.google.com -b 'dc=USERNAME@GOOGLEDOMAIN.EXT'
    
    コマンドフラグの後に、コマンドの次のフィールドを置き換えます。:
    -wユーザのパスワード。パスワードを一重引用符と中括弧で囲んで、特殊文字をエスケープする必要がある場合があります (例 : '{userP@$$w*rd}')。
    -Dユーザプリンシパルネーム (UPN) または電子メールアドレス形式 (例 : user.connect@example.com) でのユーザのユーザ名。
    -bDC 形式でのユーザのユーザ名 (例 : dc=user.connect@example.com)。
  2. 認証結果が成功したことを確認します。
    注: 以下はサンプル結果です。
    成功 (結果には、ユーザ情報に加えて、グループメンバーシップに関する情報が含まれる場合があります)。
    admin@macos-11 ~ % LDAPTLS_IDENTITY="LDAP Client" ldapsearch -uLLL -w theRightPasswordGoesHere -D 'first.last@example.com' -H ldaps://ldap.google.com -b 'dc=first.last@example.com'
    dn: dc=user,dc=connect@example,dc=com
    ufn: user.connect@example.com
    objectClass: top
    objectClass: domain
    objectClass: dcObject
    dc: user
     
    dn: ou=Groups,dc=first,dc=last@example,dc=com
    ufn: Groups, first.last@example.com
    objectClass: top
    objectClass: organizationalUnit
    ou: Groups
     
    dn: ou=Users,dc=first,dc=last@example,dc=com
    ufn: Users, first.last@example.com
    objectClass: top
    objectClass: organizationalUnit
    ou: Users
    description: OrganizationName
    失敗: ユーザが不明で、間違ったパスワードが入力されました。
    admin@macos-11 ~ % LDAPTLS_IDENTITY="LDAP Client" ldapsearch -uLLL -w wrongpassw0rd -D 'first.last@example.com' -H ldaps://ldap.google.com -b 'dc=first.last@example.com'
    ldap_bind: Invalid credentials (49)
        additional info: Incorrect password
    失敗: ユーザは Google Workspace ドメインの一部ですが、この LDAP サーバでの認証が許可されているユーザグループの一部ではありません。
    admin@macos-11 ~ % LDAPTLS_IDENTITY="LDAP Client" ldapsearch -uLLL -w SuperSecretPassword -D 'first.last@example.com' -H ldaps://ldap.google.com -b 'dc=first.last@example.com'
    ldap_bind: Insufficient access (50)
        additional info: Not authorized to authenticate password
    失敗: LDAP 証明書がないか、権限が正しくない (すべての App のアクセスを許可するように Scope が設定されていないか、システムレベルの証明書ではなくユーザレベルに Scope が設定されている) か、admin.google.com で LDAP サービスがオフになっています。
    admin@macos-11 ~ % LDAPTLS_IDENTITY="LDAP Client" ldapsearch -uLLL -w macOSJNUC.8 -D 'first.last@example.com' -H ldaps://ldap.google.com -b 'dc=first.last@example.com'
    ldap_sasl_bind(SIMPLE): Can't contact LDAP server (-1)