ウェブ管理対象設定

デベロッパーは、ChromeOS Enterprise 管理者がアプリを動的に構成できるようにしたいと考えるかもしれません。Managed Configuration API を使用すると、アプリのインストール時にアプリの動作を管理できる強力な方法を提供できます。管理者がアプリに構成を渡し、その動作を動的に変更できるようにするインターフェースを定義できます。これには、以下が含まれますが、これらに限定されません。

  • 開くときに特定のウィンドウ サイズを設定します。
  • サーバー アドレスまたは認証構成を事前入力します。
  • アプリの機能を有効または無効にします。

Web Managed Configuration API の設定

管理対象設定では、デベロッパーとエンタープライズ管理者の両方が手順を行う必要があります。デベロッパーは API を実装し、インターフェースを公開する必要があります。企業管理者は、管理コンソールからインスタンスを設定する必要があります。これらの手順を説明するために、さまざまなログイン オプションの構成を例として使用します。エンタープライズ管理者は、一部のユーザーまたは組織部門が特定の認証情報でログインできるようにし、他のユーザーまたは組織部門はログインできないようにしたい場合があります。

構成可能なインターフェースを定義して共有する

他のタイプの外部サービスと同様に、アプリを構成する顧客と外部で共有できるインターフェースを定義することから始めることをおすすめします。マネージド構成は JSON 辞書をアプリに送信するため、各パラメータの説明、型、デフォルト、有効なオプションを文書化することをおすすめします。ログイン オプションを無効にするパラメータの例を次に示します。

                                                                                   
パラメータタイプデフォルトオプション説明

DisableLoginOptions

String[]

[]

"email""google"

無効にするログイン オプションのリスト。

このようにインターフェースを文書化すると、外部チームや顧客とのサービスに関するコミュニケーションが円滑になり、長期的なメンテナンスにも役立ちます。上記の例では、企業管理者様は次の JSON を使用して "email" ログインを無効にできます。

{
  “DisableLoginOptions: ["email"]
};

管理対象の設定

Google 管理コンソールには、企業管理者が管理対象の設定を行えるインターフェースが用意されています。この記事の執筆時点では、このオプションは選択したアプリの右側の [**Managed configuration**] の下に表示されます。値を入力して構成を保存すると、管理対象アプリで自動的に使用できるようになります。

管理対象構成フィールドを挿入するための Google 管理コンソールの UI

管理対象構成フィールドを挿入するための Google 管理コンソールの UI

たとえば、ログインを無効にするには、企業の管理者がルート組織部門のすべてのユーザーに対して { "‘DisableLoginOptions’" : ["email"]} を使用してアプリを設定できます。これにより、変更を保存すると、その構成が管理対象アプリで自動的に利用できるようになります。

アプリから構成を取得する

インターフェースを定義し、構成をアプリに送信したら、アプリ内で構成を取得する必要があります。そのためには、Managed Configuration API を呼び出します。

navigator.managed.getManagedConfiguration(['DisableLoginOptions']).then(function (result) {
  // result = { "‘DisableLoginOptions’" : ["email"]}
  // hide email login option
});

getManagedConfiguration は、キーを文字列の配列として受け取り、結果を JSON オブジェクトとして返す Promise ベースの関数です。これは、前の手順で企業管理者によって入力された値です。

注: コードで TextureView の変換行列を以前に使用したことがある場合、Chromebook などの横向きのデバイスではプレビューが正しく表示されないことがあります。変換行列がセンサーの向きを 90 度または 270 度と誤って想定している可能性があります。回避策については、GitHub のこのコミットを参照してください。ただし、代わりに、ここで説明する方法を使用するようにアプリを移行することを強くおすすめします。

この結果を使用してアプリの動作を変更することで、管理者はアプリを動的に構成し、すべての組織部門のニーズに合わせて調整できます。