エンタープライズ バインディングを作成する

EMM コンソールから新しい組織を登録するには、 エンタープライズ バインディング「 Enterprises リソースは、以下を表します。 EMM と組織間のバインディングです。そのインスタンスを使用して オペレーションを呼び出すことができます。

Play EMM API では、次の 3 つの方法でエンタープライズ バインディング インスタンスを作成できます。

  • 管理対象の Google ドメインの登録 - この方法は、他の両方の方法の代わりに使用できます。セキュリティ部門が 初めて使用する管理対象の Google ドメインと組織 Google も同じ登録 UI を使用します。ユーザーが UI を使用する過程で、 状況やニーズによって異なります。組織は 事前に EMM トークンを取得しておく必要があります。

  • managed Google Play アカウントの登録 - managed Google Play アカウントを使用する組織があります。統合できる EMM コンソールに表示される Google の Android 登録 UI インスタンスをバインドするエンタープライズ バインディング インスタンスを簡単に作成できます。 追加できますユーザーとデバイスの managed Google Play アカウントが有効になります。 この手法は、API では「EMM が開始」と呼ばれることもあります。 ご覧くださいこのメソッドは、管理対象の Google ドメインの使用が推奨されるため非推奨となりました。 。

  • 管理対象の Google ドメインの登録 - 組織に既存の管理対象の Google ドメインがあります。IT 管理者による修了 たとえば、Google によるドメイン所有権の確認 エンタープライズ サービス アカウントの作成が必要です。このアプローチは、 API ドキュメントでは「Google が開始」と呼ばれることもあります。

どちらの方法も、EMM コンソールで Enterprises リソース。表 1 バインディング用のこのリソースの関連フィールドとオペレーションを示します EMM に移行しました。

表 1: Enterprises API と代替バインディング プロセス

 managed Google Play アカウント エンタープライズ管理対象の Google ドメイン 説明
フィールド
id enrollcompleteSignup の呼び出しから返される組織の一意の識別子。
kind 固定文字列値を使用してリソースのタイプを識別します。 "androidenterprise#enterprise"。
name 関連付けられている組織 enterprise オブジェクトに置き換えます。
primaryDomain未設定 managed Google Play アカウント エンタープライズは、 適用されるため、このフィールドは管理対象の Google できます。
管理者 []× セットを使用して Android に登録した IT 管理者は、 EMM で開始された登録プロセスが、 エンタープライズ バインディングmanaged Google Play Console を使用すると、IT 管理者は 管理タスクに参加できるようにする。詳しくは、 管理対象の Google Play ヘルプセンターをご覧ください。
administrator[].email 未設定
メソッド
completeSignup completionToken の場合 enterpriseToken を返す場合は、 レスポンスの本文です
generateSignupUrl ある callbackUrl の場合、 は URL と completionToken を返します。
enroll EMM に発信者を登録します。 リクエストとともに送信されます。
getServiceAccount サービス アカウントを返し、 認証情報が必要です。
setAccount 使用するアカウントを設定します 企業として API の認証を行います。
unenroll EMM はバインディングを次のいずれかに切断できます。 エンタープライズタイプですEMM を使って呼び出す必要がある ESA の認証情報ではなく、MSA の認証情報です。

managed Google Play アカウントの登録

この登録方法は非推奨です。こちらの 管理対象の Google ドメインの登録方法をご利用ください。

管理対象の Google ドメインの登録

登録プロセスは EMM コンソールに統合できます。

managed Google Play アカウント管理者への登録
図 1. 管理対象の Google ドメインの登録 ワークフロー

IT 管理者が企業の作成プロセスを開始します。そのために IT 部門は admin:

  1. EMM コンソールにログインします。
  2. [Configure Android] などをクリックまたは選択すると、 Google がホストする申し込み UI です。
  3. 登録 UI に企業の詳細が表示されます。
  4. EMM コンソールにリダイレクトされる。

IT 管理者のメールアドレスが、管理者である Google アカウントにリンクされました。 使用する必要があります。

ベスト プラクティス: Google のセキュリティ ガイドラインを参照し、 保護します。

前提条件

IT 管理者向け

  • EMM コンソールへのアクセスと、 ([Android を管理] など)を選択します(メニューの選択など)。

  • 仕事用メールアドレス。これは、 Gmail.com のような共有ドメインではなく、

で確認できます。

EMM コンソールの場合

管理対象の Google ドメインの登録フローを実装するには、EMM コンソールから 次のことができる必要があります。

  • Play EMM API の呼び出し時に MSA 認証情報を使用します。MSA オペレーションの多くが、IT 管理者に代わって 組織のエンタープライズ サービス アカウント(ESA)が設定されている。

  • Google 提供の外部サイトへのリダイレクトを安全な URL 経由で処理し、 登録フローを開始し、登録プロセスを完了します。

  • 登録後に ESA 認証情報で構成できる。EMM が コンソールを使用して、任意の組織の 各 enterpriseId を独自のサービスに関連付ける方法が必要です 認証情報を取得できます。サービス アカウントを作成することを Enterprises.getServiceAccount を呼び出して組織化します 鍵管理を Google Cloud で Serviceaccountkeys API。 プログラムでエンタープライズ サービス アカウントを作成するをご覧ください。 をご覧ください。

Android の登録プロセスでは、サービス用に安全な(https)サービスを提供する必要があります。 実行時にコンソールの使用状況を把握できますこの安全なサービスへの URL は、ローカル URL または セッションやその他の固有の識別情報を含めてもかまいません。 正しい形式で入力する必要があります。例:

https://localhost:8080/enrollmentcomplete?session=12345

登録手順

登録プロセスは 5 分以内に完了するように設計されています。手順は次のとおりです。 callbackUrl をホストするサーバーが稼働していることを前提としています。以下の手順 メニュー選択画面などの UI コンポーネントがコンソールに [Android を管理] がオプションとして選択されていて、 認証済みの IT 管理者がこのオプションを選択します。

managed Google Play アカウントを登録するための 12 ステップのプロセス
エンタープライズ
図 2. マネージド リソースへのバインディングを作成する 12 ステップのプロセス Google ドメイン
<ph type="x-smartling-placeholder">
    </ph>
  1. IT 管理者が EMM コンソールで登録リクエストを開始します。

  2. Enterprises.generateSignupUrl を呼び出す (唯一のパラメータとして callbackURL を指定)。例:

    https://localhost:8080/enrollcomplete?session=12345

  3. レスポンスには、登録用 URL(30 分間有効)と 補完します。完了トークンを抽出して保存します。

    おすすめの方法: 完了トークンを、Google アカウントを持つユーザーや ユーザーが登録を開始しました。

  4. generateSignupURL レスポンスから url を抽出します。

  5. 手順 4 で抽出した URL にリダイレクトします。

  6. IT 管理者は、登録 UI の設定フローに沿って エンタープライズ バインディング:

    1. IT 管理者は自分自身とその組織の詳細情報を入力し、 パスワードを設定します。

    2. EMM 名が IT 管理者に表示され、 この EMM にバインドされます。

    3. IT 管理者が Google 利用規約に同意します。

  7. 登録 UI は、ステップ 2 で指定された URL に基づいてコールバック URL を生成します。

  8. 登録 UI により、コールバック URL にリダイレクトされます。抽出して保存する URL に追加します。例:

    https://localhost:8080/enrollcomplete?session=12345&enterpriseToken=5h3jCC903lop1

  9. Enterprises.completeSignup を呼び出します。 completionToken(ステップ 3)と enterpriseToken(ステップ 8)を渡します。

  10. この呼び出しでは Enterprises インスタンス レスポンス本文に指定しますidname、管理者のメールアドレスを保存します( あります。

  11. エンタープライズ サービス アカウント(ESA)を作成する。ESA 認証情報の形式 2 つのグループがありますESA を作成するには、次の 2 つの方法があります。

    • ベスト プラクティス: プログラムで ESA を作成する 使用します
    • Google Chat で ESA を作成するよう IT 管理者に指示するページを表示する API Console詳細については、サービスの作成 アカウント (管理者に選択するよう依頼してください) プロジェクト >編集者のロールを割り当て、秘密鍵のダウンロードを確認します。 ボックス)。IT 管理者が ESA を作成したら、コンソールに以下を設定します。 その ESA の秘密鍵認証情報が
  12. MSA の認証情報を使用して、 setAccount で設定 この組織の ESA です

登録プロセスが完了しました

  • 管理対象の新しい Google ドメインが EMM にバインドされます。
  • IT 管理者の Google アカウントがドメインの管理者として設定されている。 https://play.google.com/work にアクセスして、以下を行うことができます。 組織のアプリを管理できます。
  • EMM コンソールで ESA を選択し、組織のデータを Google Play EMM API

プログラムで ESA を作成する

ESA の鍵管理を簡素化するには、Google Play EMM API を使用して サービス アカウントを使用する必要はありません。サービス Play EMM API を通じて生成されたアカウント:

  • に属している Cloud コンソール プロジェクトには表示されません ユーザーまたは組織。プログラムで管理する必要があります。
  • 次のコマンドを実行すると削除されます。 登録解除: できます。

サービス アカウントをプログラムで生成するには:

  1. Enterprises.getServiceAccount を呼び出す enterpriseId で登録します(登録のステップ 10 を参照) プロセス) 必要な鍵のタイプ(keyType)を指定します(googleCredentials、pkcs12)。 システムからサービスのサービス アカウント名と秘密鍵が返されます。 (Google API Console で返されるものと同じ形式)。

  2. Enterprises.setAccount を呼び出す 組織のサービス アカウントを設定します。

ベスト プラクティス: IT 管理者による ESA 認証情報の変更をサポートします。タスク 既存の ESA を使用して setAccount を呼び出します。

サービス アカウントのキーを管理する

返されたサービス アカウントは、 Enterprises.getServiceAccount Google によって透過的に作成されます。EMM であるため、これらにアクセスできない できます。ただし、 Serviceaccountkeys API をコンソールに追加して、組織が独自の API を ESA と鍵が生成されます。

Serviceaccountkeys API 組織のアクティブな認証情報の挿入、削除、一覧表示を 管理する方法を学びました。これらの API は、ESA として承認されているときに呼び出す必要があります。 組織に対して設定され、ESA が生成されている getServiceAccount~。つまり、組織がコールした後 Enterprises.setAccount 生成されたサービス アカウントを使用して、 Enterprises.getServiceAccount), その組織だけが、オンプレミス ネットワーク上で Serviceaccountkeys API を 管理できます。

表 2. Serviceaccountkeys API

フィールド
idServiceAccountKey の不透明な一意の文字列識別子 割り当てられています。
kind固定文字列を使用してリソースを識別します。 androidenterprise#serviceAccountKey
type生成される鍵データのファイル形式。指定できる値は次のとおりです。
  • googleCredentials
  • pkcs12
データプライベート認証情報の本文で構成される文字列 表示されます。作成時に入力されます。Google によって保存されることはありません。
メソッド
delete指定された認証情報を削除して無効にする サービス アカウント(enterpriseIdkeyId で指定)。
挿入サービス アカウントの新しい認証情報を生成する 関連付けられています
listサービス アカウントのすべての有効な認証情報を一覧表示する 関連付けられていますID とキーのタイプのみを返します。

通知

プログラムで生成された ESA からの通知は、次の方法で取得できます。 Enterprises.pullNotificationSet の呼び出し。 EMM の通知を設定するをご覧ください。 をご覧ください。

管理対象の Google ドメインの登録

管理対象の Google ドメインに属するデバイスを管理するには、 EMM コンソール、組織、組織間の接続(バインディング)を Google

前提条件

管理対象の Google ドメイン、EMM 登録トークン、および エンタープライズサービスアカウント(ESA)です。IT 管理者向けの情報 詳しくは、Android Enterprise ヘルプ Center にあります。

管理対象の Google ドメイン

組織の IT 管理者が管理対象 Google Workspace のお申し込み時にドメインの所有権を証明した場合、 Google 管理コンソールから行います。組織に 使用すると、IT 管理者は 1 回限りのウェブ アクセスを介して Google への登録プロセスについて説明します。

EMM トークン

IT 管理者は、EMM トークンを Google 管理コンソール([デバイス] > [モバイルと エンドポイント >設定 >サードパーティ統合)。

ESA

組織の IT 管理者は、通常は EMM コンソールに関連付けられたプロジェクトで Google Cloud コンソールにアクセスする必要があります。ESA 名前、ID、行われた操作のためにアカウントを認証するキーを持っている 委任できます。ID はメールアドレスに似た形式ですが、 サービス アカウントの名前と、@ 記号とプロジェクト名の前 、Google サービス情報(例: some-orgs-esa@myemmconsole313302.iam.gserviceaccount.com など)。

登録手順

  1. IT 管理者は Google 管理コンソールから EMM トークンを取得します。
  2. IT 管理者から EMM トークンが共有され、管理者はユーザーに EMM トークンの管理を許可する ドメイン上の Android。
  3. EMM コンソールから、EMM トークンを使用して Enterprises.enroll。 これにより、組織の Android ソリューションが Google ドメインにバインドされます。
    • enroll メソッドは一意の enterpriseId を返します。これは、 (管理対象の Google ドメインの場合のみ) list メソッドを使用します。
    • 必要に応じて、バインディングに関する情報を保存できます(enterpriseIdprimaryDomain など)をデータストアに格納し、API 呼び出しを行わないようにします。 表示されます。Google アカウントのシナリオでは、組織の primaryDomain EMM が組織を識別し、 Google
  4. Google Play EMM API を組織ごとに呼び出すには: <ph type="x-smartling-placeholder">
      </ph>
    • 組織を代表して ESA を作成するか、管理者が 共有します。
    • EMM コンソールから setAccount、次を使用 enterpriseId および ESA のメールアドレス。これにより ESA が 企業として API の認証を行います。

次の例は、特定の primaryDomainName 組織を登録する場合で、 serviceAccountEmailauthenticationToken:

    public void bind(String primaryDomainName, String serviceAccountEmail,
        String authenticationToken) throws IOException {

      Enterprise enterprise = new Enterprise();
      enterprise.setPrimaryDomain(primaryDomainName);

      Enterprise result = androidEnterprise.enterprises()
          .enroll(authenticationToken, enterprise)
          .execute();

      EnterpriseAccount enterpriseAccount = new EnterpriseAccount();
      enterpriseAccount.setAccountEmail(serviceAccountEmail);
      androidEnterprise.enterprises()
          .setAccount(result.getId(), enterpriseAccount)
          .execute();
    }

この例では、Java 用のクライアント ライブラリと AndroidEnterprise サービスクラスを com.google.api.services.androidenterprise.model パッケージ化されています。サンプルに示す手順は、次の手順で要約できます。

  1. パラメータを使用して新しい AndroidEnterprise オブジェクトを作成する プライマリ ドメイン名を含むモデルクラス、bind によって提供される サービス アカウントのメールアドレス、EMM 登録トークンで構成されます。
  2. 新しく作成したエンタープライズ オブジェクトのプライマリ ドメイン名を指定します。
  3. enroll メソッドを呼び出して、エンタープライズ オブジェクトと登録トークンを指定します。
  4. お客様の ESA ID を使用して新しい EnterpriseAccount オブジェクトを作成する (serviceAccountEmail)。
  5. 手順 3 で返された enterpriseId の両方を指定してアカウントを設定します。 enterpriseAccount フィールドがあります。

必要に応じて、バインディングに関する情報を保存できます(enterpriseIdprimaryDomain など)をデータストアに格納し、API 呼び出しを行わないようにします。 表示されます。Google アカウントのシナリオでは、組織の primaryDomain は次のようになります。 EMM と Google に対して組織を識別するための一意のキー。

オンプレミス デプロイメントを設定する

組織のデータを、アクセスできない場所にサイトに残すよう求められた場合は、 サーバーのアクティブな認証情報セットがサーバーで認識されないように ESA、そのためには、一連の ESA 認証情報を生成し、サイトに保存します。

  1. 登録フローを完了します。 <ph type="x-smartling-placeholder">
      </ph>
    1. ステップ 11 に示すように、MSA を使用して getServiceAccount を呼び出します。この ESA 認証情報が生成されます。
    2. ステップ 12 に示すように、ESA で setAccount を使用して ESA として設定します。 できます。
  2. ESA を組織のオンプレミス サーバーに渡します。
  3. オンプレミス サーバーで次の手順を行います。 <ph type="x-smartling-placeholder">
      </ph>
    1. Serviceaccountkeys.insert を呼び出す 新規作成します。 ESA の鍵となりますこの秘密鍵は Google のサーバーには保存されず、 アカウントの作成時に 1 回だけ返されます。アクセスできない できます。
    2. 新しい ESA 認証情報を使用して Serviceaccountkeys.list。 これにより、アクティブなサービス アカウントの認証情報が返されます。
    3. 発信 Serviceaccountkeys.delete ESA 認証情報を除くすべての認証情報を削除する 見てみましょう。
    4. (省略可)電話 Serviceaccountkeys.list 現在オンプレミスで使用されている認証情報が 認証情報を取得できます。

これで、オンプレミス サーバーが ESA 認証情報を持つ唯一のサーバーになりました。1 台のみ getServiceAccount で生成された ESA はアクセスできます ServiceAccountKeys - MSA に呼び出しが許可されていません。

ベスト プラクティス: マスター サービス アカウント(MSA)の認証情報を 接続します。オンプレミスのデプロイごとに個別の ESA を使用する。

エンタープライズ バインディングの登録解除、再登録、削除

登録を解除

EMM ソリューションから組織をバインド解除するには、次のコマンドを使用します。 unenroll。企業 登録を解除してもバインディングは削除されませんが、EMM で管理されているユーザーと 関連するユーザーデータは 30 日後に削除されます。例 実装:

    public void unbind(String enterpriseId) throws IOException {
      androidEnterprise.enterprises().unenroll(enterpriseId).execute();
    }

ベスト プラクティス: 組織名と企業用のデータストアがある場合 バインディング ID のマッピングを使用すると、呼び出し後にデータストアから情報を削除できます。 unenroll

再登録

IT 管理者は既存の enterpriseId を使用して企業を再登録できます。宛先 所有者レベルのアカウントでログインし、登録 プロセスをご覧ください。

再登録のフローは、管理者の観点からは透過的であり、 リダイレクト URL(ステップ 8)で返されたエンタープライズ トークンのトークンが、 新しい組織、または以前に別の組織に登録されていた組織 EMM。

以前に EMM ソリューションに登録した組織を エンタープライズ バインディング ID を認識できるかどうかを確認します。EMM の管理対象ユーザーを復元できます IT 管理者が 30 人以下の組織を再登録した場合、関連するユーザーデータ 数日後に自動的に配信されます。以前に Google Workspace に 別の EMM に登録済みの場合、 他の EMM にアクセスできなくなります。これは、これらのユーザー ID が EMM 固有。

削除

IT 管理者は managed Google Play から組織を削除できます。24 以内 組織のデータ、アカウント、ライセンス割り当て、 管理者、エンドユーザー、管理者がリソースにアクセスできなくなります。たとえば、 API 呼び出しから HTTP 404 Not Found レスポンス ステータス コードが返されます。 enterpriseId パラメータを指定します。EMM コンソールでこのエラーを処理するには アプリとの関連付けを削除する前に、IT 管理者に確認を求めてください できます。