概要

ここでは、管理アプリケーションのすべての機能について詳しく説明します。このドキュメントの内容の概要については、以下をご覧ください。

セクション コンテンツ
ホーム画面 容量使用状況と登録済みアプリケーションに関する情報の表示
テナントの管理 サブテナントの管理方法
使用状況の統計 サブテナントの使用状況統計の確認方法
ユーザーの管理 ユーザーの追加、編集、無効化、または削除する方法
権限の管理 グローバルロールインベントリロールの追加および編集方法、ユーザーへの割り当て方法、アプリケーションへのアクセスを許可する方法
アプリケーションの管理 Things Cloudアカウントでの登録済みアプリケーションの管理方法、および、カスタム アプリケーションの構成設定
ビジネスルールの管理 アラームマッピングによってアラームの優先順位を変更する方法
データの管理 データの保持ルールの管理と設定方法、およびファイルリポジトリでの保存ファイルの管理
二要素認証 ユーザーの二要素認証をアクティブ/非アクティブにする方法
設定の変更 アプリケーション設定認証設定などのアカウント設定の変更方法、プロパティライブラリの管理方法、 シングルサインオンの構成方法

ホーム画面

管理アプリケーションのホーム画面には、以下のコンテンツが表示されます。

Home screen

使用状況には以下の情報が表示されます。

テナントの管理

Things Cloud では、サブテナントの作成と管理ができるテナント機能を利用することができます。

重要
複数のテナントを提供することと、単一のテナント内で複数のユーザーに異なる権限を提供することには大きな違いがあります。テナントは物理的に分離されたデータスペースであり、個別のURL、独自のユーザー、個別のアプリケーション管理を持ち、デフォルトとしてデータを共有しません。また、同じテナント内にいるユーザーは、デフォルトで、同じURLと同じデータスペースを共有します。例えば、ユーザーが別々の顧客であり、競合他社である可能性があるため厳密に分離する必要がある場合は、個別テナントとして設定することを強くお勧めします。ロールベースのアクセスアプローチとマルチテナントのアプローチの詳細については、RBAC VS マルチテナント をご覧ください。

テナント機能を使用するには、ユーザーに適切な権限が必要です。権限の編集の詳細については、 グローバルロールの追加をご覧ください。テナントの編集は機密性の高い操作であるため、テナントの編集権限はより細かくなります。

サブテナントの表示

テナントメニューのサブテナントをクリックすると、アカウントで使用可能なすべてのサブテナントが表示されます。

テナントページには、各サブテナントに関する次の情報が表示されます。

備考
マネジメントテナントには、親テナントの情報が記載された列もあります。親テナントとは、一覧に表示されているサブテナントを作成した元のテナントのことです。

サブテナントの作成

  1. トップメニューバーの右にあるテナントを作成をクリックします。

    Create subtenant

  2. 次のプロパティを指定します。

フィールド 説明 必須
ドメイン/ URL 「acme」のように、任意のサブドメインを入力します。テナントのURLは je1.thingscloud.ntt.com 上の「acme.je1.thingscloud.ntt.com」になります。使用できるサブドメインレベルは1つだけです。例えば、「acme.je1.thingscloud.ntt.com」のみ je1.thingscloud.ntt.com で使用できます。「mycustomer.acme.je1.thingscloud.ntt.com」は使用できません。これはTLS標準では許可されていません。
テナントドメインには、小文字、数字、またはハイフン( - )を使用でき、文字で始まる必要があります。ハイフン( - )は途中でのみ使用できます。最小は2文字です。
はい
名前 テナントの名前。会社名など はい
管理者のEメールアドレス ユーザーがパスワードをリセットできるようにするには、有効なメールアドレスを指定する必要があります。 はい
管理者のユーザー名 このテナントの管理者のユーザー名 はい
連絡先名 連絡先名 いいえ
連絡先電話番号 連絡先の電話番号 はい
パスワードリセットのリンクを Eメールで送信 デフォルトで選択されています。このオプションの選択を解除する場合は、パスワードを入力し、パスワードを確認する必要があります(パスワードの強度についての詳細は、はじめに > Things Cloudへのログイン方法をご覧ください)。 いいえ
テナントポリシー ドロップダウンリストから、テナントに適用するテナントポリシーを選択できます。 いいえ
  1. 保存をクリックして設定を適用します。

サブテナントが作成されると、自動生成されたIDが取得されます。このIDは変更できません。また、最初の管理ユーザー(管理者のユーザー名)が自動的に表示されます。この管理者は、他のユーザーを作成し、権限を設定できます。ロックアウトを防ぐため、最初のユーザーは削除することができません。

サブテナントのプロパティの表示または編集

目的のサブテナントをクリックするか、サブテナントの右側にあるメニューアイコンをクリックして、編集をクリックします。

プロパティタブでは、IDドメイン/ URL管理者のユーザー名以外のすべてのフィールドを編集できます。フィールドの詳細については、サブテナントの作成をご覧ください。

テナントのパスワードを変更するには、パスワードの変更をクリックし、次のフィールドに新しいパスワードを入力して、保存をクリックします。

サブテナントの削除受付

テナントの削除受付を実行すると、このテナントへのアクセスは、デバイス、ユーザー、またはその他のアプリケーションからのアクセスに関係なく、すべてブロックされます。 さらに、すべてのマイクロサービスがデプロイ解除され、テナントが再有効化されると、すべてのマイクロサービスが再デプロイされます。

削除受付処理を実行した場合、削除受付後から6ヶ月間に限りテナントのデータはデータベースに保持されるため、削除取り消しをクリックすることで再度使用可能になります。​

サブテナントの削除受付

  1. 各サブテナントの右側にあるメニューアイコンをクリックして、削除受付をクリックします。

    Suspend tenant

  2. 表示されるダイアログボックスで、削除受付をクリックしてパスワードを入力し、削除受付の完了を確認します。

備考
削除受付されるテナント管理者の構成設定でメールアドレスが指定されている場合は、削除受付の一環として、そのテナント管理者にメールが送信されます。

重要

サブテナントの削除受付後、該当のサブテナントは課金対象から除外されます。​実際の削除処理は、削除受付から6か月経過後にバッチ処理によって実行されます。​ ※削除受付後、6ヶ月経過後の削除実施日0:30時点でのステータスを持って順次削除処理を行います。

アプリケーション

アプリケーションタブでは、登録しているすべてのアプリケーションを表示したり、テナントをアプリケーションに登録したり、テナントからアプリケーションを削除したりできます。テナントは、デフォルトで標準 Things Cloud アプリケーションが登録されます。

Subscribe tenant

アプリケーションの登録

右側の利用可能なアプリケーションの下のアプリケーションにカーソルを合わせ、目的のアプリケーションで登録をクリックします。

アプリケーションの登録解除

左側の登録済みアプリケーションの下にあるアプリケーションの上にカーソルを合わせ、登録解除をクリックします。

マイクロサービスの監視

Things Cloudによってマイクロサービスとしてホストされているすべてのアプリケーションは、名前の横に表示される記号でそのステータスを確認することができ、次のいずれかの状態になります。

各エントリを展開すると、ステータスの詳細を表示できます。

Application details
次の情報が表示されます。
備考
少なくとも 1 回の再起動の場合、マイクロサービスインスタンス名と再起動の回数に関する情報が表示されます。

詳細については、各アプリケーションの プロパティを参照してください。アプリケーションの管理をご覧ください。

カスタム プロパティ

カスタム プロパティタブでは、定義済みプロパティ(「外部参照」など)または プロパティライブラリ で定義されているカスタム プロパティの値を表示および編集できます。これらのプロパティは、使用状況の統計ページの列としても表示されます。

サブテナント リクエスト頻度の制限

プラットフォーム管理者は、次のカスタム プロパティより、各サブテナントのリクエスト頻度を制限できます。

リクエスト調整メカニズムは、両方のHTTPプロパティ(「HTTPキューを制限」と「HTTPリクエストを制限」)が構成されている場合にのみ有効になります。値の1つが省略されていると機能しません。

重要
リクエスト頻度の制限は、総当たり攻撃のログイン試行、APIの悪用、リクエスト フラッディングなどの脅威に対して効果的な対策となり、悪意のある、または不要なトラフィックの数を減らすことができます。これは、DoS(サービス拒否)攻撃から保護し、正当なリクエストのための利用可能な帯域幅の節約に役立ちます。

また、特定のテナントのCEPキューおよびデータブローカキューのバッファサイズをカスタマイズすることもできます。これは、次のサブテナントカスタムフラグメントを使用して、管理テナントから実行できます。

テナントおよびシステムレベルで制限がない場合、制限機能は無効とみなされ、テナントは無制限にアクセスできます。制限を付けた後に、リクエスト頻度の制限をオフにする場合は、値を「-1」に設定してください。

サブテナントのデバイス数の制限

プラットフォーム管理者は「デバイスの数を制限」というカスタム プロパティから、同時に登録されるルートデバイスまたはすべてのデバイス(子デバイスを含む)の数を制限できます。

同時に登録されているデバイスの最大数、ルートデバイス、およびストレージ使用量の最大値は、使用状況の統計ページに表示されます。

テナントポリシー

テナントポリシーとは、テナントオプションとデータ保持ルールのセットです。テナントオプションと保持ルールは、テナントの作成時に指定できます。

特定のオプションとルールのセットを使用してテナントポリシーを作成すると、同じ設定で複数のテナントを作成する場合に時間を節約できます。

備考
オプションとルールはテナント内へコピーされます。ポリシーを編集しても、すでに作成されたテナントに対して影響はなく、変更は反映されません。

重要
テナントポリシーで指定されたテナント オプションは 暗号化されていません。 ここでテナントオプションを指定したり、「資格情報」で上書きしたりしないでください。プラットフォームは、これらのオプションがテナントの作成後に表示されるデータで暗号化されることを想定しているためです。

テナント ポリシーの表示

テナントメニューのテナントポリシーをクリックすると、利用可能なテナントポリシーがすべて表示されます。

テナント ポリシーごとに、名前、テナントオプションの説明、オプションとデータ保持ルールの数が、一覧またはグリッドで表示されます。

テナント ポリシーの作成

  1. トップメニューバーのポリシーの追加をクリックします。
  2. 表示されるウィンドウでテナント ポリシーの「名前」と「説明」を入力します。

    Add new policy
  3. 少なくとも1つの保存ルールを追加します。保存ルールの作成の詳細については、管理 > データ管理 > データ保持ルールをご覧ください。
  4. 必要に応じて、テナントオプションを追加します。
  5. 保存をクリックします。

テナント ポリシーがテナント ポリシー一覧に追加されます。

重要
保持ルールとオプションを定義するときに、サブテナントがこれらのルールまたはオプションの定義を変更できるようにするチェックボックスを選択できます。既定では、このチェックボックスは有効になっていません。サブテナントの作成後にこのチェックボックスを選択しない場合、ルールとオプションを編集するには、管理テナントから更新を実行する必要があることに注意してください。

テナント ポリシーの編集

該当するポリシーをクリックするか、ポリシーの右側にあるメニューアイコンをクリックして、編集をクリックします。

表示されるウィンドウで編集を行い、保存をクリックして設定を保存します。

ポリシーからデータ保持ルールまたはテナントオプションを削除するには、その上にカーソルを合わせ、削除アイコンをクリックします。

テナント ポリシーの複製

複製するテナントポリシーのメニューアイコンをクリックし、複製をクリックします。

テナント ポリシーの削除

削除するテナントポリシーのメニューアイコンをクリックし、削除をクリックします。

使用状況の統計

使用状況の統計の表示

使用状況の統計ページには、各サブテナントの統計情報が表示されます。

サブテナント統計

サブテナントごとに次の情報が提供されます(スペースが限られているため、上のスクリーンショットではすべての項目は表示されていません)。

フィールド 説明
ID サブテナントのID
テナント サブテナント名
APIリクエスト デバイスおよびアプリケーションからのリクエストを含む、APIリクエスト総数
デバイスからのAPIリクエスト デバイスからのAPIリクエスト数
ストレージ(MB) アカウントに保存されているデータ量
ピークストレージ(MB) ストレージのピーク値
ルートデバイス 子デバイスを除くルートデバイス数
ルートデバイスのピーク数 子デバイスを除くルートデバイスのピーク数
デバイス 子デバイスを含む、サブテナントに接続されたデバイスの合計数
デバイスのピーク 子デバイスを含むデバイスのピーク数
エンドポイントのデバイス ゲートウェイやエッジを除くリーフデバイス
登録済みアプリケーション サブテナントにサブスクライブされているアプリケーション数
作成日時 サブテナントの作成日時
アラームが作成されました 作成されたアラーム数
アラームが更新されました 更新されたアラーム数
インベントリが作成されました 作成されたマネージドオブジェクト数
インベントリが更新されました 更新されたマネージドオブジェクト数
イベントが作成されました 作成されたイベント数
イベント更新済み 更新されたイベント数
作成された計測値 作成されたメジャーメント数
受信転送合計 すべての受信転送の合計(アラームの作成、アラームの更新、作成イベント、更新イベント、インベントリの作成、インベントリの更新、メジャーメントの作成)
CPU (M) マイクロサービスのCPU使用率(CPUミリ秒で指定)
メモリ (MB) マイクロサービスのメモリ使用量
外部参照 例えば、CRM システムへのリンクをここに追加したり、内部顧客番号を追加するなど、個別の用途に使用します

さらに、カスタム プロパティが設定されている場合は表示されます。

カスタムプロパティは、プロパティ ライブラリで定義し、テナントのカスタム プロパティタブで値を設定できます。

上部のメニューバーに開始日と終了日を追加して 適用 をクリックすると、ある期間の使用統計リストをフィルター処理できます。使用状況の統計ページには、この期間のすべてのサブテナントの数値が表示されます。

備考
選択した期間の後にテナントが作成された場合、そのテナントは表示されますが、数字は「0」です。

列名の横にあるフィルターアイコンをクリックし、フィルター条件を指定して、任意の列のリストをフィルター処理したり、並べ替えることもできます。はじめに > UIの機能と特長 > 絞り込み(フィルタリング)をご覧ください。

重要
ここで使用される日付/時刻の範囲は、タイムゾーンが異なるためにサーバーの時刻と異なる場合があります。

使用状況統計をエクスポートするには

  1. 上部のメニューバーの右側にある CSVをエクスポート をクリックして、統計テーブルの現在のビューをCSVファイルにエクスポートします。

  2. 表示されるダイアログボックスで、フィールド区切り記号、小数点記号、および文字セットを指定して、CSV出力をカスタマイズできます。

  3. ダウンロード をクリックしてエクスポートを開始します。

CSV ファイルがダウンロードされます。

毎日の処理

使用統計は、リクエスト数のような進行する値と、特定の期間における状態のスナップショットである値で構成されます。後者のタイプのデータの場合、値は毎日数回更新されますが、EOD (End of the Day - 1日の終わり) からの値は特定の日に割り当てられた値です。

値のタイプ 更新
リクエスト数フラッシュ 5分ごと
使用済みストレージ 9、17およびEOD
デバイス数 9、17およびEOD
登録されたアプリケーション 9、17およびEOD

ライフサイクル

テナント

Things Cloudプラットフォームテナントには、いくつかの状態があります。

 

ユーザーの管理

ユーザー管理機能を使用するとテナント内のユーザーを管理できます。ユーザーの作成、ユーザーの詳細の保存、ログインとセキュリティのオプションの構成が可能です。

必要条件

ロールと権限:

「ユーザー管理」権限タイプ:

  • ユーザーを表示する: 読み取り権限
  • すべての既存ユーザーを管理する (作成、編集、削除、無効化/有効化、管理) : 管理者権限
  • ユーザーを作成する:作成権限

「自身のユーザー管理」権限タイプ (ユーザー管理機能には影響しません):

  • 自分自身のユーザーを閲覧する場合:読み取り権限
  • 自分自身のユーザーを編集する場合:管理者権限

プラットフォーム上で作成された各ユーザーは、「自身のユーザー管理」権限に関係なく、デフォルトで自分の情報を編集できることに注意してください。 「自身のユーザー管理」権限の目的は、技術的な目的で作成された特定のユーザーを管理し、そのようなユーザーを各サービスで管理できるかどうかを決定することです。

外部認可サーバーを介して作成されたユーザーの場合、Things Cloud の以下の設定を更新しても効果はありません(次回のユーザー再ログイン時にリセットされます)。

また、外部認可サーバを介して作成されたユーザーに対しては、Things Cloud におけるパスワードリセットが無効になります。

備考
シングルサインオンを使用しているユーザーは、プラットフォームが管理しているユーザーのパスワードを変更できません。

ユーザーの表示

テナント内のすべてのユーザーを表示するには、ナビゲーターの アカウント メニューで ユーザー をクリックします。

Expanded view

ユーザーリストが表示され、ユーザーごとに次の情報が提供されます。

リストをユーザー名で絞り込むには、トップメニューバーの左側にあるフィルター フィールドを使用します。ドロップダウン リストを使用すると、グローバルロールで絞り込みができます。フィルタリングの詳細については、はじめに > UI の機能と特長 > 絞り込み(フィルタリング) をご覧ください。

選択したフィルターを適用するには、適用 をクリックします。

ユーザーの追加

  1. トップメニューバーの右側にあるユーザーを追加をクリックします。

    備考
    テナントのシングル サインオンが有効になっている場合、シングル サインオン経由でログインできないローカルユーザーが作成されていることを通知するメッセージが表示されます。

  2. 新しいユーザーウィンドウの左側から、ユーザーを識別するために次の情報を入力してください。

    フィールド 説明
    ユーザー名 システム内でユーザーを識別するための一意のユーザーIDです。ユーザーの作成後にユーザー名を変更することはできません。このフィールドは必須です。ユーザー名に日本語を用いることはできません
    ログイン エイリアス ユーザー名に加えて、ログオンに使用するエイリアスをオプションで指定できます。このエイリアスは必要に応じて変更できます。ログイン エイリアスをユーザー名と同じにすることはできません。 ログイン エイリアスはデバイスではサポートされていないことに注意してください
    ステータス ユーザーアカウントを有効/無効にします。ユーザーアカウントが無効になっている場合、ユーザーはログインできません
    Eメール 有効なメールアドレスです。これは、ユーザーがパスワードをリセットできるようにするために必要です。このフィールドは必須です
    ユーザーの名前
    ユーザーの姓
    電話番号 有効な電話番号です。ユーザーが二要素認証を使用する場合は必須項目となります
  3. ユーザーのログインオプションを選択します。 

    • 次回ログイン時にパスワード リセットを強制する:選択した場合、ユーザーは次回ログイン時にリセットする必要があるパスワードを指定してください。パスワードを入力して確認します。パスワードを入力すると、パスワードの強度が表示されます。パスワードのリセットと強度の詳細については、パスワードの変更 をご覧ください。
    • パスワード リセットのリンクを Eメールで送信:選択した場合、ユーザーはパスワードを設定するためのリンク先を含んだメールを受信します。上記で設定したメールアドレスへメールが送信されます。このオプションは、ユーザーの作成中にのみ使用できます。
  4. ページの右側から、ユーザーのグローバルロールを選択します。グローバルロールの詳細については、権限の管理をご覧ください。

  5. 保存をクリックして設定を保存します。

新規ユーザーがユーザーリストへ追加されます。

備考
手動で作成されたユーザーは、デフォルトで、「自身のユーザー管理」権限が有効に設定されています。

ユーザーの編集

  1. 編集したい列の右側にあるメニューアイコンをクリックし、編集をクリックします。 ユーザー名およびパスワードリセットのリンクをEメールで送信を除く、すべてのフィールドを変更できます。各フィールドの詳細については、ユーザーの追加をご覧ください。
  2. パスワードを変更をクリックして、パスワードを変更します。
  3. 編集後、保存をクリックして設定を適用します。

インベントリロールのコピー

  1. 変更したい列の右側にあるメニューアイコンをクリックし、インベントリロールをコピーをクリックします。
  2. 次のウィンドウで、ロールを既存のユーザーロールにマージするか(デフォルト)、既存のユーザーロールを置き換えるかを選択します。
  3. ドロップダウンリストからコピーしたいロールを持つユーザーを選択します。
  4. コピーをクリックします。

選択されたユーザーのインベントリロールをコピーします。

ユーザーの有効化/無効化

変更したい列の右側にあるメニューアイコンをクリックし、無効化をクリックします。無効化されているユーザーを有効にするには、有効化をクリックします。

ユーザーの削除

削除したいユーザの列の右側にあるメニューアイコンをクリックし、削除をクリックします。

すべてのユーザーをログアウトする

テナントのユーザーのセッショントークンに関連するセキュリティインシデントが発生した場合は、現在使用中のトークンを無効にすることができます。

すべてのユーザーをログアウトするには、上部のメニュー バーの右側にある すべてのユーザーをログアウト をクリックします。 これにより、現在 OAI-Secure またはシングル サインオン リダイレクト経由でログインしているすべてのユーザーがログアウトされます。 現在のテナント内のすべてのデバイスによって取得された JWT トークンも無効になります。

基本認証が使用されている場合、base64 トークンを介してログインしたユーザーはログアウトされないことに注意してください。

必要条件
すべてのユーザーをログアウトするには、権限タイプ「ユーザー管理」の管理者権限が必要です。

権限の管理

権限では、ユーザーが Things Cloud アプリケーションで実行を許可される内容を定義します。権限をより簡単に管理するために、「ロール」と呼ばれるグループにまとめられています。すべてのユーザーは、権限を追加しながら複数のロールに関連付けることができます。

次のタイプのロールをユーザーに関連付けることができます。

さらに、ユーザーがアプリケーションを使用できるようアプリケーションアクセスを付与することができます。

グローバルロール

アカウントメニューのロールをクリックして、構成設定済みのロールの一覧を表示します。

Context menu

グローバルロールタブには、システムレベルで権限を付与するロールがあります。既定でグローバルロールがいくつか定義されていますが、必要に応じて独自のロールを定義できます。

備考

定義済みロールは、特定の目的のためのサンプルとして構成されています。これらを出発点として使用し、個々のニーズにおいて、さらに適合させることができます。

新しいユーザーを作成するとき、割り当てられた各ロールによって、ユーザーに割り当てるグローバルロールに特定ユーザー関連の必要なすべての権限が含まれていることを確認します。 異なるロールの権限は、同じユーザーに割り当てられるとマージされます。 例えば、ユーザーが「コックピット ユーザー」ロール(以下参照)しか持っていない場合、ユーザーはコックピット アプリケーションのみアクセスでき、それ以上はアクセスできません。ただし、利用可能なロールの一部を介してインベントリのアクセス許可を割り当てると、ユーザーはデバイス、グループ、構成などのインベントリ全体にアクセスできるようになります。

「admins」と「devices」のロールには特別なステータスがあります。

ロール    説明
admins 管理者権限が有効になっています。テナントで最初に作成された初期管理者がこのロールを持ちます
devices デバイスの一般的な権限の設定。登録後、デバイスは自動的にこのロールを持ちます。デバイスが必要とするアクセス許可が既定より少ないか多い場合に、このロールを編集するか、デバイスに他のロールを割り当てます

さらに、次のロールがデフォルトで設定されています。

ロール 説明
CEPマネジャー すべてのスマートルールおよびイベント処理ルールにアクセスできます
コックピットユーザー コックピットアプリケーションにアクセスできます。さらに、デバイスへのアクセスを許可するロールを追加する必要があります
デバイス管理ユーザー デバイス管理アプリケーションにアクセスできます。ユーザーはシミュレーターを使用して、一括操作を実行できます。さらに、デバイスへのアクセスを許可するロールを追加する必要があります
グローバルマネージャー すべてのデバイスからのすべてのデータに対し、閲覧、書き込みができます
グローバルリーダー すべてのデバイスからのすべてのデータを閲覧できます
グローバルユーザーマネージャー すべてのユーザーを管理できます
共有ユーザーマネージャー サブユーザーを管理できます。サブスクライブしているプランには、サブユーザーを管理できるようにユーザー階層を含める必要があります
テナントマネージャー 所有アプリケーション、データブローカー、データ保持、オプション、テナント統計など、テナント全体の設定を管理できます

次のレガシーロールも表示される場合があります。

ロール 説明
business すべてのデバイスとそのデータにアクセスできますが、テナントでの管理権限がありません
readers すべてのデータを閲覧できます(「グローバルリーダー」とは違い、ユーザー管理を含みます)

グローバルロールの追加

グローバルロールタブでグローバルロールの追加をクリックします。新しいグローバルロールページではアクセス権限タイプの一覧が左側に表示され、アクセス可能なアプリケーションの一覧が右側に表示されます。次のスクリーンショットは、「admins」ロールの設定を示しています。

Admin example

権限レベル

タイプごとに、次の権限レベルを選択できます。

備考
「作成」アクセス権限は、Things Cloudにおける所有権の概念に関連しています。オブジェクトを作成した場合、そのオブジェクトの所有者となり、それ以上の権限を必要とせずにオブジェクトを管理できます。例えば、「インベントリ」の「作成」権限を持つユーザーは、デバイス/グループを作成し、それらのデバイス/グループを完全に管理できます。自分で作成しなかったデバイス/グループは、「更新」権限または追加のインベントリロール(下記参照)を持っていない限り、管理できません。この概念は、デバイスに最小限の権限を割り当てるのに役立ちます。

それぞれのレベルをすべての権限タイプに設定するには、列の最上部にあるチェックボックスを選択します。

権限のカテゴリ

次の権限カテゴリは、デフォルトで使用可能です。

カテゴリ 説明
アラーム アラームを閲覧、または編集
アプリケーション管理 アカウントで使用可能なアプリケーションの閲覧と編集
監査 監査ログの閲覧、作成
一括操作 一括操作の閲覧、作成
CEP管理 CEPルールの閲覧、編集
データブローカー 他のテナントへデータを送信、または他のテナントからデータを受信
デバイス制御 デバイスに送信するコマンドを表示、編集。デバイスにコマンドを送信。またデバイス登録にも使用されます
イベント イベントの閲覧、作成
グローバルスマートルール グローバルスマートルールの構成設定
識別子 デバイスの識別IDを閲覧、編集
インベントリ インベントリデータの閲覧、編集
計測値(メジャーメント) メジャーメントの閲覧、作成
オプション管理 パスワードのポリシーなどのアカウントオプションの閲覧、編集
データ保持ルール データ保持ルールの閲覧、編集
エクスポートをスケジュール レポートのエクスポートスケジュール管理
シミュレーター シミュレートされたデバイスの構築設定
SMS SMSの構成(Things Cloud では本機能は利用できません)
テナント管理 サブテナントの閲覧、作成、編集、削除
テナント統計 管理アプリケーションのホーム画面に表示されている該当アカウントのデータ使用量の閲覧
ユーザー管理 ユーザー、グローバルロール、アクセス権限の閲覧、編集
自身のユーザー管理 自身のユーザーの閲覧、編集。この権限は技術的なユーザーにのみ適用される場合があることに注意してください。

登録プランの機能によっては、追加の権限が表示される場合があります。それらは、各機能とともに説明されています。

重要
新しい権限を持つ新規機能がThings Cloudに追加されても、既存のロールには自動的に追加されません。最近発表された新規機能を使用できない場合は、権限を確認してください。

グローバルロールの割り当て

グローバルロールをユーザーに割り当てるには、ユーザーリストで直接割り当てるか、目的のユーザー詳細画面を開いて追加します。

重要
デフォルトでは、SSO ユーザーのロール(SSO ログイン時に自動的に作成される)を変更することはできません。これは、動的アクセス マッピングによって上書きされるためです。ただし、この動作は変更できます。 詳細については、ユーザーガイド管理 > 構成設定 > カスタムテンプレート をご覧ください。
ユーザーリストよりグローバルロールを割り当てる
  1. 目的のユーザーのグローバルロール列をクリックして、グローバルロールの一覧を開きます。
  2. 各チェックボックスをオンまたはオフにします。
  3. 適用をクリックして設定を保存します。
ユーザー画面よりグローバルロールを割り当てる
  1. 目的のユーザーの行をクリックします。
  2. 表示されたユーザ画面において、右側の関連するグローバルロールのチェックボックスをオンまたはオフします。
  3. 保存をクリックして設定を保存します。

インベントリロール

インベントリロールには、デバイスのグループに割り当てることができる権限が含まれています。例えば、インベントリロールにデバイスを再起動する権限を含めるとします。そして、そのインベントリロールをデバイスグループ「Region North」とユーザー「smith」に割り当てるとします。その結果、ユーザー「smith」は、グループ「Region North」とそのサブグループ内のすべてのデバイスを再起動できるようになります。

現在設定されているインベントリロールを表示するには、アカウントメニューのロールをクリックし、インベントリ ロールタブに切り替えます。

Context menu

インベントリロール タブでは、特定のグループやその配下にある子のユーザー権限を管理できます。デフォルトのインベントリロールがいくつか定義されていますが、必要に応じて独自のロールを定義できます。

新規テナントは、次のデフォルトのインベントリロールが最初から使用可能です。

ロール 説明
マネージャー すべてのアセットのデータの読み取りとインベントリ内のデータの管理ができますが、オペレーションの実行はできません。
さらに、ダッシュボードを含むインベントリデータとアラームの管理ができます
操作: すべて デバイスにオペレーションを送信し、アセットを遠隔管理することができます
(例:ソフトウェアのアップデート、リモート設定)
操作: デバイス再起動 デバイスの再起動ができます
リーダー アセットのデータをすべて閲覧することができます

インベントリ ロールの追加

インベントリ ロールタブでインベントリ ロールの追加をクリックします。新しいインベントリ ロール ページで、名前説明 を入力し、新しいインベントリ ロールに アクセス権限 を割り当てます。

Role details

アクセス権限は、次のカテゴリに分類されます。

カテゴリ 説明
アラーム デバイスからのアラーム操作に関連する権限
監査 監査ログに関連する権限
イベント デバイスからのイベント操作に関連する権限
インベントリ デバイスを閲覧および編集するための権限
計測値(メジャーメント) メジャーメントに関連する権限
デバイス制御 デバイスを遠隔制御するための権限
フルアクセス 構成設定を簡素化するための、関連するデバイスへの完全なアクセス権

目的のカテゴリの横にあるプラスアイコンをクリックして、ロールに権限を追加します。

タイプフィールドで、タイプを指定して、アクセス権限が適用されるデータタイプをさらに制限します。アクセスは、指定された タイプ を含むオブジェクトにのみ許可されます。

例えば、デバイスが「c8y_SignalStrength」などのデバイス管理に関連するメジャーメントと、実際の生産メジャーメントを送信するとします。デバイス管理メジャーメントのみをユーザーに表示したい場合、タイプとして「c8y_SignalStrength」と入力します。これにより、ユーザーは「c8y_SignalStrength」タイプを含むメジャーメントのみを表示できます。ユーザーは、同じメジャーメント オブジェクトの一部となりえる他のタイプを含んだ、メジャーメント オブジェクト全体を見れることを注意してください。

デフォルトでは、タイプフィールドにはすべてのタイプを選択するアスタリスク「*」が含まれています。

備考
使用可能なタイプの詳細については、デバイスのドキュメント、Things Cloud センサー・ライブラリまたはデバイス管理ライブラリを確認してください。ここで使用されているタイプは、「タイプ」プロパティではなく、いわゆる「フラグメントタイプ」です。メジャーメントを表示するには、メジャーメントで送信するすべてのフラグメントタイプを入力してください。他のタイプのデータについても同様です。

アクセス権限フィールドで、ドロップダウンリストから権限レベルを選択します。

重要
アクセス権限を追加すると、小さな感嘆符が表示される場合があります。感嘆符は、ユーザーが追加した権限が有効でないことを示します。これは、そのユーザーの別の「高位」権限セットに、対応するアクセス権限がすでに含まれているためです。例えば、「フルアクセス」を設定しているかどうか、または同じセクションにタイプが「*」で、アクセス権限が「すべて」である別の設定があるかどうかを確認してください。

別の例として、トラッキングデバイスを使用しているとします。ユーザーにはすべてのデバイスを表示できるようにしたいのですが、何も変更できないようにしたいとします。さらに、ユーザーはマップ上でデバイスの軌跡を追跡できるようにしたいとします。追跡は、フラグメントタイプ「c8y_Position」のイベントを使用して記録されます(センサー・ライブラリを参照)。そのためには、下の図で示すようにインベントリと「c8y_Position」をタイプに持つイベントに読み取り権限を割り当てます。

Permission example

ユーザーへのインベントリロールの割り当て

インベントリロールは、ユーザーとデバイスのグループに割り当てられます。

インベントリロールを割り当てるには、アカウントメニューのユーザーをクリックし、ユーザーリストでユーザーを選択してインベントリロールタブに切り替えます。

インベントリロールタブにはデバイスグループのツリーが表示されます。インベントリロールを割り当てるには、グループ行の右側にあるドロップダウンを開きます。関連するロールを選択し、適用をクリックします。ロールの詳細については、その横の情報アイコンをクリックするか、インベントリロールをご覧ください。

重要
ユーザーがすでにインベントリ権限を含むグローバルロールを持っている場合、ここで設定したインベントリロールに関係なく、すべてのデバイスを表示または変更できます。

インベントリロールは、グループとその直接および間接的な配下にあるすべてのサブグループ、そしてこれらのグループ内のデバイスに継承されます。例えば、デバイスのグループのアラームに対する閲覧権限を持つロールを選択すると、ユーザーはこのグループ内のすべてのデバイスとサブグループのアラームを閲覧できます。

ユーザーがデバイスグループへのインベントリアクセス権を持っている場合、ユーザーはコックピットアプリケーションでそのデバイスグループのすべてのダッシュボードへのアクセス権も持ちます。

他のユーザーのインベントリロールをコピーすることもできます。ロールをコピーするには、別のユーザーからインベントリロールをコピーをクリックします。次のウィンドウで、リストからユーザーを選択し、コピーをクリックします。上部で、ロールを既存のユーザーロールにマージするか(デフォルト)、既存のユーザーロールを置き換えるかを選択できます。参照ユーザーを作成し、そこから権限をコピーできるため、ロールをコピーして多数のユーザーの権限を簡単に管理できます。

アクセス権限のトラブルシューティング

十分なアクセス権限のない状態で操作を実行しようとすると、エラーメッセージが表示されます。

アクセス権限のトラブルシューティングには、トップバーの右側にあるユーザーボタン(現在のユーザー名が表示)をクリックします。メニューから、拒否されたリクエストを選択します。次のウィンドウには、拒否されたリクエストの詳細が表示されます。アクセス権限の修正には、管理者ユーザーまたは製品サポートへお問い合わせください。

アプリケーションへのアクセス許可

アプリケーションへのアクセスタブには、テナントで使用可能なすべてのアプリケーションがアルファベット順に一覧表示されます。

ユーザーにアプリケーションを割当てるには、目的のアプリケーションを選択し、保存をクリックします。

アプリケーション管理の詳細については、管理 > アプリケーションの管理をご覧ください。

備考
ユーザーにすべてのアプリケーションを閲覧するグローバル権限がある場合、インフォメーションボックスが表示されます。

監査ログの表示

監査ログには、ユーザーが実行したオペレーションが表示されます。

監査ログには、ユーザーが処理したセキュリティ関連の操作が表示されます。 たとえば、ユーザーがゲートウェイにログインすると監査ログが生成されます。

必要条件
ロールと権限:

  • 監査ログを表示する: 権限タイプ「監査」の読み取り権限
  • 監査ログを作成するには、権限タイプ「監査」の管理者権限が必要です。 ただし、UI からは監査ログを作成できないことに注意してください。REST 経由で監査ログを作成する方法の詳細については、Things Cloud OpenAPI仕様 の 監査 をご覧ください。

監査ログを表示するには

監査ログリストを表示するには、アカウントメニューの監査ログをクリックします。ログエントリごとに、次の情報が表示されます。

説明
時間 オペレーションが処理されたサーバー時刻
イベント オペレーションのタイプ。例えば「アラームが作成されました」「スマートルールが削除されました」など。その下には、処理したユーザーが表示されます
説明 オペレーションに応じて、デバイス名、アラーム テキスト、操作ステータスなどの詳細情報を提供します
デバイス時間 オペレーションが処理されたデバイス時刻。サーバー時刻と異なる場合があります

最新の100個のログのみが表示されます。ページを下にスクロールして 読み込んでいます まで移動して、さらにログエントリを表示します。

Audit logs

備考
オペレーションがリアルタイムで更新されても、監査ログリストは自動更新されません。トップバーの右側にある再読み込みをクリックして、ログリストを最新のものに更新してください。

ログのフィルタリング

ログを簡単に検索するために、次の要素で絞り込むことができます。

フィルターを適用するには、各フィルター フィールドの横にある 適用 ボタンをクリックします。フィルターを破棄するには、適用 ボタンの横にある X アイコンをクリックします(フィルターが設定されている場合にのみ表示されます)。

監査ログの種類

監査の種類 アクション
アラーム
  • アラームが作成されました
  • アラームが更新されました
アプリケーション
  • アプリケーションが有効化されました
  • アプリケーションがサブスクライブされました
  • アプリケーションの登録が解除されました
  • アプリケーションのデプロイ
  • アプリケーションのデプロイメントの失敗
  • アプリケーションがアンデプロイされました
  • アプリケーションのスケーリングが変更されました
  • アプリケーションが削除されました
このタイプの監査ログは、ホストされたアプリケーションとマイクロサービスの両方に対して作成される場合があります。
一括操作
  • 一括操作が作成されました
  • 一括操作が更新されました
  • 一括操作が削除されました
データ ブローカー コネクタ
  • コネクタが作成されました
  • コネクタが更新されました
  • コネクタが削除されました
デバイスの稼働率の監視
  • デバイスの稼働率が有効になっています
  • デバイスの稼働率が無効になっています
  • デバイスの稼働率間隔が更新されました
  • デバイスがメンテナンス状態
グローバルロール
  • グローバルロールが更新されました
  • グローバルロール権限が更新されました
  • グローバルロールのデバイス権限が更新されました
インベントリ
  • マネージドオブジェクトが削除されました
  • トークンが見つからないため、デバイスの登録に失敗しました
  • トークンが無効なため、デバイスの登録に失敗しました
  • デバイス登録の試行失敗の最大数に達しました
インベントリロール
  • インベントリロールが作成されました
  • インベントリロールが更新されました
  • イインベントリロールが削除されました
操作
  • 操作が作成されました
  • 操作が更新されました
オプション
  • オプションが作成されました
  • オプションが更新されました
  • オプションが削除されました
レポート
  • アクセスされたテナント統計のテスト
  • 実際のテナント統計にアクセスします
シングル サインオン
  • SSO ログイン
  • SSO ログアウト
  • SSO ログアウトに失敗しました
スマート ルール
  • スマート ルールが作成されました
  • スマート ルールが更新されました
  • スマート ルールが有効になっています
  • スマート ルールが無効になっています
  • スマート ルールが削除されました
テナント
  • テナントが作成されました
  • テナントが更新されました
  • テナントの一時停止
  • テナントが有効化されました
  • テナントが削除されました
テナント認証の構成
  • 認証構成が追加されました
  • 認証構成が更新されました
  • 認証構成が削除されました
信頼できる証明書
  • 信頼できる証明書がアップロードされました
  • 信頼できる証明書が更新されました
  • 信頼できる証明書が削除されました
ユーザー
  • ユーザーが作成されました
  • ユーザーが更新されました
  • ユーザーのユーザー名が更新されました
  • ユーザーパスワードが更新されました
  • ユーザーのロールが更新されました
  • ユーザーグループが更新されました
  • ユーザーの委任が更新されました
  • ユーザー所有者が更新されました
  • ユーザー インベントリの割り当てが更新されました
  • ユーザーのデバイス権限が更新されました
  • ユーザーが削除されました
ユーザー ログイン
  • ユーザーログイン
  • ユーザーのログアウト
基本認証を使用する場合、このタイプのエントリは作成されないことに注意してください。
備考
監査ログを含むAnalytics Builderの監視については、カスタムストリーミング処理ガイド Analytics Builder > 監視と設定を参照してください。

アプリケーションの管理

Things Cloud プラットフォームは、アプリケーションとマイクロサービスを区別します。Things Cloud コンセプトガイドアプリケーションの開発 もご覧ください。

どちらも、ナビゲータの エコシステム メニューからアクセスできます。

必要条件

ロールと権限:

  • アプリケーションとマイクロサービスを表示する:「アプリケーション管理」権限タイプの読み取り権限
  • アプリケーションとマイクロサービスを管理する (作成、更新、コピー、削除): 「アプリケーション管理」権限タイプの管理者権限

テナントの作成時には、上記の権限のサンプル構成として使用できるデフォルトのロールが利用可能です。

  • テナント マネージャー - アプリケーション、テナント オプション、ビジネス ルールなどのテナント全体の構成を管理する

アプリケーションを完全に管理するには、機能ごとに、さまざまな権限レベルを持つ追加の権限タイプが必要になる場合があることに注意してください。

アプリケーション

ナビゲータの エコシステム メニューで アプリケーション をクリックして、アカウント内のすべてのアプリケーションのリストまたはグリッドを表示します。

All applications

すべてのアプリケーション タブでは、テナントで使用できるすべてのアプリケーションを確認できます。 アプリケーションには次の 2 種類があります。

アプリケーションは、トップバーのアプリケーション スイッチャーから利用できます。

App switcher

登録済みアプリケーション

Things Cloud は、さまざまな目的に合わせて、さまざまなアプリケーションを提供します。インストールやオプションのサービスに応じて、利用可能なアプリケーションの選択肢がテナントに表示されます。

以下に、テナントでデフォルトで使用可能なすべてのアプリケーションを示します。さらに、多数のオプションのアプリケーションがテナントに登録されている場合があります。

備考
すべてのアプリケーションタブでは、登録されたアプリケーションは「登録済み」とラベルが付きます。登録されたアプリケーションは、ユーザーが追加、変更、または削除することはできませんが、テナント管理者のみが行うことができます。

デフォルトの登録済みアプリケーション

UI での名称 機能 APIでの識別 テクニカルタイプ
管理 アカウント管理者はユーザー、ロール、テナント、およびアプリケーションを管理できます administration Web アプリケーション
コックピット ビジネスの観点からIoTのアセットとデータを管理および監視します cockpit Web アプリケーション
デバイス管理 デバイスを管理および監視し、デバイスのリモートでの制御とトラブルシューティング devicemanagement Web アプリケーション
ストリーミング分析 Analytics Builder モデルと EPL アプリの管理と編集(有効な場合) Streaming Analytics Web アプリケーション

カスタムアプリケーション

カスタム アプリケーションは、次のような働きを行うことができます。

すべてのアプリケーション タブでは、カスタムアプリケーションに「カスタム」というラベルが付きます。

カスタムアプリケーションの追加

すべてのアプリケーション タブの右上にある アプリケーションを追加 をクリックします。

次に表示されるダイアログで、以下のいずれかの方法を選択します。

Webアプリケーションのアップロード
  1. すべてのアプリケーション タブの右上にある アプリケーションの追加 をクリックします。
  2. Webアプリケーションのアップロードを選択します。
  3. 次のダイアログで、zipファイルをドロップするか、ファイルシステムでファイルを参照します。

zipファイルがプラットフォームに正常にアップロードされると、アプリケーションが作成されます。

重要
zipファイルのルートディレクトリに index.htmlcumulocity.json が含まれている必要があります。含まれていない場合、アプリケーションは動作しません。

外部アプリケーションへのリンク
  1. すべてのアプリケーション タブの右上にある アプリケーションの追加 をクリックします。
  2. 外部アプリケーションを選択します。
  3. 次のウィンドウで、アプリケーションの名前を入力します。名前は、アプリケーションのタイトルとして表示されます。
  4. このアプリケーションを識別するアプリケーション・キーを入力します。
  5. アプリケーションにアクセスできる外部 URL を入力します。
  6. アプリケーションを追加をクリックしてアプリケーションを作成します。

フィールドの詳細については、後述の アプリケーションのプロパティ をご覧ください。

ブループリントからアプリケーションのインストール
  1. すべてのアプリケーション タブの右上にある アプリケーションの追加 をクリックします。
  2. 利用可能なパッケージからインストール を選択します。
  3. 目的のパッケージを選択します。
  4. 表示されるダイアログ ボックスで、アプリケーションの名前を入力します。 名前はアプリケーションのタイトルとして表示されます。
  5. このアプリケーションを識別するために使用されるアプリケーション キーを入力します。
  6. アプリケーションにアクセスできるパスを入力します。
  7. 保存 をクリックしてアプリケーションを作成します。

フィールドの詳細については、以下の アプリケーション プロパティ も参照してください。

アプリケーションの複製

アプリケーションの複製は、登録済みアプリケーションを必要に応じてカスタマイズする場合に便利です。登録済みアプリケーションを複製すると、元のアプリケーションへのリンクを含む独自のアプリケーションとしてコピーが作成されます。

  1. すべてのアプリケーション タブの右上にある アプリケーションの追加 をクリックします。
  2. 次のダイアログで、既存のアプリケーションを複製を選択します。
  3. ドロップダウン リストから目的のアプリケーション (たとえば、「Cockpit」) を選択します。
  4. 次のウィンドウで、アプリケーションの名前、アプリケーションを識別するためのアプリケーションキー、およびアプリケーションを呼び出すための URL の一部としてのパスを入力します。デフォルトでは、元のアプリケーションの値が数値で拡張されて提供されます。パスを元のサブスクライブされたアプリケーションのパスに設定すると、独自のアプリケーションがサブスクライブされたアプリケーションを無効にします。
備考
プラットフォームは、名前 フィールドでプレフィクス「feature-」の使用を制限しています。アプリケーション名にこのプレフィクスを使用してアプリケーションを作成することはできません。これは、複製アプリケーション機能が使用されている場合の既存のアプリケーションにも当てはまります。
  1. 最後に、複製 をクリックしてアプリケーションを作成します。

フィールドの詳細については、下記のアプリケーションのプロパティもご覧ください。

備考
アプリケーションがテナントにサブスクライブされている場合、追加のトグル 登録されたアプリケーションを却下 があります。このトグルをオンにすると、名前、キー、およびパスの値が元のアプリケーションから継承され、複製されたアプリケーションがサブスクライブされたアプリケーションを無効にします。 値を変更するには、これをオフにします。

アプリケーションの複製

フィールドの詳細については、以下の アプリケーション プロパティ も参照してください。

アプリケーションのプロパティ

アプリケーションの詳細を表示するには、アプリケーションをクリックして プロパティ タブを開きます。

Application properties

プロパティ タブでは、各アプリケーションにアプリケーションのタイプ(HOSTED または EXTERNAL)に応じて、次の情報が表示されます。

フィールド 説明 ホスト(Webアプリケーション) 外部
ID アプリケーションを識別する一意のID 自動的に提供 自動的に提供
名前 アプリケーション名。トップバーとアプリメニューに、アプリケーションのタイトルとして表示されます 自動的に作成 ユーザーが指定
アプリケーション・キー アプリケーションを識別し、アプリケーションを登録可能にします。Things Cloud コンセプトガイドをご覧ください 自動的に作成 ユーザーが指定
タイプ アプリケーションタイプ ホスト 外部
パス アプリケーションを呼び出すURLの一部 自動的に作成 ユーザーが指定。例えば、アプリケーションのパスとして「hello」を使用する場合、アプリケーションのURLは「/apps/hello」になります

拡張機能

ナビゲータの エコシステム メニューで 拡張 をクリックし、アカウント内のすべての拡張機能を表示します。

拡張機能を使用すると、さまざまなアプリケーション間で UI 機能の共有と再利用が容易になります。コーディングの知識がなくても、UI 機能をプラグインとして開発してアプリケーションに追加できます。

拡張パッケージには 次の 2種類のコンテンツを含めることができます。

プラグインを他のアプリケーションに追加している間、ブループリント アプリケーションをデプロイする必要があります。これにより、ソリューション全体を足場にしたり、既存のソリューションを拡張したりすることができます。 マイクロフロントエンド テクノロジにより、これは再構築しなくても実行時に発生する可能性があります。

パッケージは、拡張 ページをご覧ください。

パッケージ ビュー

新しい拡張機能パッケージを追加するには、右上の 拡張機能パッケージの追加 をクリックします。

パッケージをクリックすると、説明や画像、package.json から取得したメタ情報を含む パッケージの概要 などのパッケージの詳細が表示されます。

さらに、右側で選択したパッケージ内の利用可能なプラグインをすべて表示することができます。プラグインをインストールするには、プラグインのインストール をクリックし、目的のアプリケーションを選択します。

パッケージの概要

バージョン タブには、現在のパッケージに関連する 過去にアップロードされたすべてのバイナリが表示されます。このタブに表示されるバイナリは、各パッケージ バージョン エントリの横にあるコンテキスト メニューからダウンロードできます。

バージョン ビュー

異なるバージョンを選択またはアップロードできます。 バージョンはパッケージの状態を示します。 これらは、特定のパッケージが古く、更新する必要があるかどうかを確認するために使用できます。 バージョンをクリックすると、パッケージの内容、アプリケーション、プラグインなどの追加情報が表示されます。 タグを使用すると、バージョンに意味のある名前を付けることができます。 「latest」タグは、タグが指定されていない場合に選択されるデフォルトのバージョンを示すために使用されます。 特定のタグなしでバージョンがアップロードされると、「latest」タグはデフォルトで最新バージョンに設定されます。

別のバージョンに切り替えるには、対象のバージョンのコンテキスト メニューを開き、 最新として設定をクリックします。バージョンを削除するには、削除をクリックします。

プラグイン

アプリケーションの プラグイン タブに切り替えて、アプリケーションにインストールされているすべてのプラグインを表示します。

プラグイン グリッド

プラグイン タブでは、プラグインを追加および削除できます。 さらに、アプリケーションにプラグインをインストールできます。

アプリケーションの編集

アプリケーションをクリックするか、エントリの右にあるメニューアイコンから編集をクリックします。

プロパティタブでは、アプリケーションタイプに応じて、複数のフィールドを変更できます(アプリケーションのプロパティ をご覧ください)。

重要
システムアプリケーション名は絶対に変更しないでください(「デバイス管理」「コックピット」など)。変更するとテナントの初期化に失敗します。

アプリケーションの削除

エントリの右にあるメニューアイコンをクリックし、削除をクリックします。アプリケーションの詳細の プロパティ タブからアプリケーションを直接削除することもできます。

登録済みアプリケーションを上書きするアプリケーションを削除すると、現在登録済みアプリケーションはすべてのユーザーが使用できるようになります。さらに、ユーザーは登録済みアプリケーションの今後のアップグレードからもメリットを得ることができます。

登録済みアプリケーションを削除することはできません。これは、登録済みアプリケーションの所有者のみが実行できます。

アーカイブのアップロード

カスタム アプリケーションの場合、zip ファイルまたは mon ファイルをアップロードすることにより、作成された複数のファイルのバージョンを Things Cloud に保存することができます。各バージョンはアーカイブと呼ばれます。異なるバージョンを同時にアップロードし、これらのバージョンを切り替えることができます。

アーカイブのアップロード方法

  1. それぞれのアプリケーションをクリックして、アプリケーションのプロパティを開きます。
  2. アクティビティ ログ セクションの下部にあるプラス ボタンをクリックして、ファイルシステム内のアーカイブを参照するか、アーカイブ ファイルをドロップします。
  3. アップロードをクリックして、アーカイブを Things Cloud アカウントにアップロードします。
Application archive
アップロードされると、最新でアップロードされたバージョンが自動的にアクティブなバージョンとなります。これは、アカウントのユーザーに現在提供されているアプリケーションのバージョンとなります。このバージョンは削除できません。

備考
アプリケーションの所有者のみが、このアクションを実行できるため、登録済みアプリケーションではアーカイブ機能を使用できません。

アプリケーションを旧バージョンへ復元

ユーザーは、アーカイブからアプリケーションを旧バージョンへ復元することができます。

  1. それぞれのアプリケーションをクリックして、アプリケーションのプロパティを開きます。
  2. アクティビティ ログ セクションでメニューアイコンをクリックして、目的のバージョンのコンテキストメニューを開き、アクティブ化 を選択して、有効なバージョンにします。

単一のアプリケーションを再アクティブ化

ホストされたアプリケーションが正しくデプロイされていない場合、ユーザーは再アクティブ化できます。

  1. それぞれのアプリケーションをクリックして、アプリケーションのプロパティを開きます。
  2. アクティビティ ログ セクションで、メニュー アイコンをクリックして目的のバージョンのコンテキスト メニューを開き、アーカイブの再アクティブ化 を選択します。

選択したアプリケーションは、アプリケーション ディレクトリからそれぞれのファイルを削除し、Web アプリケーション パッケージを再度解凍することで再アクティブ化されます。

機能

機能とは、明示的なアーティファクト(マイクロサービスや Web アプリケーションなど)によって表わせられない組み込みのアプリケーションです。

機能 タブには、テナントで登録されているすべての機能のリストが表示されます。

備考
ここにリストされているすべてのアプリケーションは、タイプが「Feature」です。

テナントの個々のサブスクリプションによって、他の機能が表示される場合があります。

マイクロサービスの管理と監視

ナビゲータの エコシステム メニューで マイクロサービス をクリックして、アカウントに登録されているすべてのマイクロサービスのリストまたはグリッドを表示します。

Microservices list

マイクロサービスは特定タイプのアプリケーションであり、Things Cloud 上にさらなる機能を開発するために使用されるサーバー側アプリケーションです。

登録済みマイクロサービス

Things Cloud は、さまざまな目的に合わせて、さまざまなマイクロサービス アプリケーションを提供します。インストールおよび/またはオプションのサービスに応じて、利用可能なアプリケーションの選択肢がテナントに表示されます。

以下に、テナントに デフォルトで登録されているすべてのマイクロサービスのリストを示します。さらに、多数のオプションのマイクロサービスがテナントに登録されている場合があります。

デフォルトの登録済みマイクロサービス

UI での名称 機能 APIでの識別
Apama-ctrl-* Analytics Builder、EPL アプリ、スマート ルールのランタイムを含むストリーミング Analytics マイクロサービス。 機能とリソースは、使用されるマイクロサービスのバリアントによって異なります apama-ctrl-*
Device-simulator IoTデバイスのあらゆる側面をシミュレート device-simulator
Report-agent コックピット アプリケーション内からデータのエクスポートをスケジュールする report agent
Smartrule スマートルールエンジンを使用して、リアルタイムデータに基づいてアクションを実行するスマートルールを作成します。 Apama-ctrl マイクロサービスのバリアントが必要です smartrule
備考
ここにリストされているすべてのアプリケーションは、タイプが「Microservice」です。

マイクロサービスのプロパティ

マイクロサービスの詳細を表示するには、マイクロサービスをクリックして プロパティ タブを開きます。

Microservice properties

プロパティ タブでは、各マイクロサービスに次の情報が表示されます。

フィールド 説明 コメント
ID マイクロサービスを識別する一意のID 自動的に提供
名前 アプリケーション名。トップバーにマイクロサービス アプリケーションのタイトルとして表示されます マイクロサービスのマニフェストファイルで指定されていない限り、zipファイル名から自動的に推測されます(認識されたバージョン番号は削除されます)
アプリケーション・キー マイクロサービス アプリケーションを識別し、マイクロサービスを登録可能にします。Things Cloudコンセプトガイドをご覧ください zipファイル名に基づいて自動的に作成
タイプ アプリケーションタイプ Microservice
パス アプリケーションを呼び出す URLの一部 /service/<microservice-name>として自動的に作成

マイクロサービスのアクセス権限

アクセス権限 タブでは、各マイクロサービスに必要なアクセス権限と、提供されているロールを表示できます。

マイクロサービスの監視

Things Cloud がホストするマイクロサービスは、2つの方法で監視できます。

ステータス情報

マイクロサービスのステータスは、目的のマイクロサービス アプリケーションの ステータス タブより確認することができます。

Microservice status
ステータスを表示するには、アプリケーション管理の読み取りロールとインベントリの読み取りロールの権限が必要です。

ステータス タブには、次の情報が表示されます。

アラームとイベント

ステータスタブに表示されるほとんどのアラームとイベントは、マイクロサービスで何が起こっているかを厳密に技術的に説明したものです。

利用者向けのアラームタイプは2つあります。

上記のアラームは、マイクロサービス所有者のテナントに対してのみ作成されます。また、状況が正常に戻る、つまりすべてのマイクロサービス インスタンスが正常に動作している状態に戻ると、自動的にクリアされます。

これらのアラームはスマートルール作成にも利用できます。さまざまなタイプのスマートルールの作成についての詳細はスマートルールをご覧ください。

例えば、マイクロサービスがダウンしたときにメールを送信する場合は、「アラーム時に電子メールを送信」というスマートルールを作成します。

次のタイプのアラームの場合: セクションで、アラームタイプとしてc8y_Application_Downを使用します。対象アセットとして、例えば「echo-agent-server」など、監視するマイクロサービスを選択します。

ログファイル

Things Cloudは、閲覧ログを表示して、テナントに所有されたマイクロサービスのステータスに関する、より詳細な情報を提供します。

ログを表示するには、目的のマイクロサービスの ログ タブを開きます。

ページ上部で、ログを表示するマイクロサービスのインスタンスを選択できます。

備考
マイクロサービスが2つのインスタンスへと規模を変更した場合はインスタンスを切り替えることができますが、両方のインスタンスからのログを同時に表示することはできません。

インスタンスのドロップダウンの横にあるカレンダーから日付を選択し、時刻を入力すれば、ログエントリが表示される時間の範囲を選択できます。

備考
ここで入力する時刻は、タイムゾーンの違いによりサーバー時刻と異なる場合があります。

右上には、次の追加機能があります。

最初に、ログタブにマイクロサービス インスタンスの最新のログが表示されます。

右下には、ナビゲーションボタンがあります。

選択した時間範囲に利用可能なログがなかった場合、それに応じてメッセージが表示されます。

Microservice log
備考

以前に実行されていたインスタンスのログ、または 35MBを超える以前にローテーションされたログを表示することはできません。しかし、インスタンス内ではDockerコンテナが実行されており、(インスタンス全体ではなく)そのDockerコンテナのみが再起動した場合は、現在実行中のDockerコンテナと最近終了したDockerコンテナのログが表示されます。

ログは常に stdoutstderr の両方を使用してDockerコンテナから読み込まれ、ログ生成元によって区別/フィルタリングすることはできません。

ビジネスルールの管理

アラームマッピング

アラームマッピングを使用すると、アラームの重要度とテキストを変更して、業務の優先順位に合わせることができます。例えば、デバイスへの接続が失われると、デフォルトでは「メジャー」アラームになりますが、重大(クリティカル)な問題になる場合があります。これを変更するには、アラームマッピングを追加して、接続損失に関連するアラームを「クリティカル」に変更します。

必要条件

ロールと権限:

  • アラームマッピングを表示する: 権限タイプ「オプション管理」の読み取り権限
  • アラームマッピングを管理 (作成、編集、または削除) する: 権限タイプ「オプション管理」の管理者権限

ユーザーアクセス管理を容易にするために、上記の権限は、すべての新しいテナントにデフォルトで作成されるグローバルロールに含まれています。

  • テナントマネージャー - アプリケーション、テナントオプション、ビジネスルールなどのテナント全体の構成を管理します。

アラームマッピングの表示

ビジネスルールメニューのアラームマッピングをクリックすると、すべてのアラームマッピングのリストが表示されます。

Alarm mapping
アラームマッピングごとに、アラームの重大度、アラームタイプ、説明(オプション)が表示されます。

アラームマッピングの追加

  1. トップメニューバーの マッピングの追加 をクリックします。
  2. 変更するアラームのタイプを入力します。
  3. 新しい説明 フィールドに、必要に応じて、アラームの新しい説明を入力します。フィールドを空のままにすると、アラーム内の元来のテキストが保持されます。
  4. 新しい重大度を選択するか、「ドロップ」を選択してアラームを表示しないようにします。
  5. マッピングの追加 をクリックして設定を保存します。
備考
アラームマッピングとして提供されるアラームタイプは、アラームタイプ プレフィクス"<type-prefix>*"として解釈されます。例えば、"crit-alarm"タイプのアラームに対応するアラームマッピングを作成すると、このマッピングは、この値で始まるすべてのタイプ("crit-alarm-1"、"crit-alarm-2"、または"crit-alarm-xyz"など)のアラームに有効です。

アラームマッピングの編集

アラームマッピングの右端をクリックし、下へ展開すれば編集できます。説明とアラーム重大度の変更ができます。 アラームタイプは編集できません。

備考
保存せずに変更を破棄するには、リストを再読み込みします。

アラームマッピングの削除

アラームマッピングを削除するには、アラームマッピングの上にポインターを合わせ、表示される削除アイコンをクリックします。

データ管理

データ保持ルール

データ保持ルールにより、データを保持する期間を制御することができます。デフォルトとして、60日経過した履歴データはすべて削除されます(プラットフォーム管理者がシステム設定で設定可能)。

例えば、メジャーメントは90日間保存するが、アラームは10日間で削除するという設定も可能です。

備考
通常、データ保持ルールは、1日に1回実行されます。データ保持ルールを編集しても、管理アプリケーションのホーム画面の使用状況セクションにはすぐに反映されません。

データ保持ルールの表示

管理メニューのデータ保持ルールをクリックすると、アカウントに設定されているデータ保持ルールの一覧が表示されます。

Retention rules
ルールごとに、ルール名、削除するデータの詳細(フラグメントタイプ、タイプ、ソースについては、以下を参照)および最大保持期間(日数)が表示されます。

アスタリスク(*)は、どの値のデータもクリーンアップされることを示します。

データタイプ

次のデータタイプが、データ保持ルールの対象となります。

備考
データ保持ルールは、ファイルリポジトリに保存されているファイルには適用されません。

データ保持ルールの追加

  1. トップメニューバーのルールを追加をクリックします。
  2. 表示されたダイアログより、クリーンアップしたいデータタイプを選択します(アラーム、計測値、イベント、操作、一括操作、監査、またはすべて)。
  3. クリーンアップするデータをもっと細かく設定したい場合、フラグメントタイプを入力します。このルールに従ってすべての接続無効アラームをクリーンアップしたい場合、データタイプに「アラーム」を選択し、タイプ欄に「c8y_UnavailabilityAlarm」と入力します。
  4. 特定のデバイスからのデータのみ削除したい場合、デバイスIDをソース欄に入力します。
  5. 最大保持期間(日) を日数単位で入力します(最大許容値は10年分の日数です)。
  6. 保存ボタンをクリックして設定を保存します。

これで、データ保持ルールは一覧に追加されます。

備考

デフォルトとして最大保持期間を除く、すべての欄にはアスタリスク(*)が設定され、すべての値が含まれます。

アラームは、ステータスが「クリア済み」でないと削除できません。

データ保持ルールの編集

編集したいルールの行をクリックし、表示された「データ保持ルールを編集」の画面より編集してください。

それぞれのフィールドの詳細については データ保持ルールの追加をご覧ください。

データ保持ルールの削除

削除するルールが含まれる行にマウスを置き、右側に表示される削除アイコンをクリックします。

すべてのデータ保持ルールは、互いに独立して順番に実行されます。したがって、2つのデータ保持ルールがある場合、最大保持期間がより長い具体的なルールと、最大保持期間がより短い一般的なルールで定義されているドキュメントのサブセットを定義します。すると、より一般的な単一のルールがあるかのように効果的に機能します。

例えば、次の 2 つのルールがあるとします。

データ タイプ フラグメント タイプ タイプ ソース 最大保持期間
メジャーメント * c8y_Temperature * 30 日
メジャーメント * c8y_Temperature 12345 60 日

ソースが12345に等しいものを含め、30日以上経過したc8y_Temperatureタイプのすべてのメジャーメントが削除されます。

一方、次のデータ保持ルールが定義されている場合:

データ タイプ フラグメント タイプ タイプ ソース 最大保持期間
メジャーメント * c8y_Temperature * 30 日
メジャーメント * * * 60 日

データ保持プロセスは、30日以上経過したタイプc8y_Temperatureのメジャーメントを削除します。他のすべてのメジャーメントは、60日以上経過すると削除されます。

備考
ソース パラメータはデバイスIDです。定義されている場合、データ保持プロセスでは、ソースによって表されるデバイスに直接関連するドキュメントのみが削除され、デバイスが属する子デバイスやグループは削除されません。

ファイルリポジトリ内のファイル管理

ファイルリポジトリでは、アカウントに保存されているファイルの概要が表示されます。

管理メニューのファイルリポジトリをクリックして、ファイルの一覧を表示します。

ここで表示されるファイルはさまざまなソースから取得されます。これらは、ソフトウェア画像、デバイスから取得した構成スナップショット、デバイスからのログファイル、すべてのアプリケーション画面からアップロードしたwebアプリケーションがあります。

ファイルごとに、ファイル名、所有者、ファイルタイプ(image/bmp、text/csvなど)、サイズ、および最終更新日が表示されます。

Files Repository

ファイルシステムからファイルをアップロードする

上部のメニューバーで ファイルのアップロード をクリックします。表示されるダイアログ ボックスで、アップロードするファイルを選択します。 複数のファイルをアップロードする場合は、ファイルを追加 をクリックして別のファイルを選択します。ファイルフィールドの右側にある削除アイコンをクリックして、アップロードする前にファイルを削除することもできます。

アカウントからファイルをダウンロードする

目的の行の右にあるメニューアイコンをクリックし、ダウンロードをクリックします。

アカウントからファイルを削除する

目的の行の右にあるメニューアイコンをクリックし、削除をクリックします。

備考
ファイルが有効化されているアプリケーションに対応している場合は削除できません。ファイルを削除するには、まずアプリケーションを削除またはアップグレードしてください。

設定の変更

設定メニューから、管理者はアカウントのさまざまな設定を管理できます。

必要条件

ロールと権限:

認証 メニュー項目を表示するには、「テナント管理」権限タイプの管理者権限を持っているか、テナントに作成された最初の管理者ユーザーである必要があります。

ユーザーアクセス管理を容易にするために、上記の権限は、すべての新しいテナントでデフォルトで作成されるグローバル ロールに含まれています。

  • テナント マネージャー - アプリケーション、テナント オプション、保持ルールなどのテナント全体の構成を管理します。

認証設定の変更

ログインまたはTFA設定を表示または変更する場合は、設定メニューの認証をクリックします。

Authentication settings

ログイン設定

優先するログインモードフィールドでは、次のオプションのいずれかを選択できます。

これらのログインモードは、ユーザーを認証するデフォルトの方法としてプラットフォームのアプリケーションによって使用されます。デバイス認証は変更されません。

重要
ログインモードを変更するたびに、強制的にログアウトされます。他のユーザーが変更を適用するには、ログアウトして再度ログインする必要があります。

パスワードの有効期限では、ユーザーがパスワードを変更しなければならなくなるまでの日数を指定して、ユーザーパスワードの有効期限を制限できます。ユーザーにパスワードの変更を強制したくない場合は、「0」を使用して、パスワードの有効期限を無制限(デフォルト値)にします。

備考
「devices」ロールを持つユーザーには、パスワードの有効期限は課されません。 これにより、デバイスのパスワードが期限切れになるのを防ぎます。

デフォルトでは、ユーザーは 8文字以上の任意のパスワードを使用できます。強力なパスワードを強制 (緑) を選択している場合、ユーザーは強度のあるパスワードを設定する必要があります。はじめに> Things Cloudへのアクセス方法 > パスワード変更をご覧ください。

備考
プラットフォーム管理者によって構成されている場合、「パスワードの有効期限」と「パスワード強度」は編集できない場合があります。

Basic Auth制限

ユーザーに対して OAI-Secure 認証が構成されている場合でも、プラットフォームを使用するデバイスとマイクロサービスに対しては引き続き Basic Auth (基本認証)を使用できます。より高いセキュリティーレベルを提供するために、Basic Auth を制限することができます。

Web ブラウザーに対して禁止 トグルを使用して、Web ブラウザーでの基本認証の使用を禁止します。さらに、次のパラメータを指定できます。

備考
信頼できるユーザーエージェントまたは禁止されているユーザーエージェントのリストに、ユーザーエージェントが見つからない場合、Things Cloud は外部ライブラリを使用する Web ブラウザーであるかどうかを確認しようとします。

OAI-Secure

OAI-Secure は、ユーザー名とパスワードによるログインもサポートする Basic Auth モードより安全な代替手段です。OAI-Secure モードでは、最初のリクエストの資格情報が、Web ブラウザーで Cookie として設定されるか、レスポンス本文で返される JWT トークンと交換されます。構成に基づいて、OAI-Secure は完全なセッション管理をサポートするか、ユーザーセッションの有効期間がトークンの有効期限によって制限される標準の JWT 認証として機能します。

セッション管理に関連する構成なしの OAI-Secure(セッション構成オフ)

セッションに関連する設定がない場合、OAI-Secure は特定の有効期間を持つ JWT トークンを発行します。トークンの有効期限が切れると、トークンの更新がサポートされていないため、ユーザーは強制的に再ログインされます。トークンの有効期間が短い場合、ユーザーは頻繁に再ログインする必要があるため、この動作はユーザーにとって非常に不便です。

セッション管理の構成を使用した OAI-Secure(セッション構成オン)

セッション構成で OAI-Secure を使用すると、より便利で安全になり、HTTP セッションに基づく認証と同様の動作を実現するために使用できます。

OAI-Secure トークンは、クライアントサイド (Web ブラウザー) でセッションIDとして機能します。 Cookie に格納されるこのようなトークンID は、事前設定された短い有効期間を持つことができます。次に、Things Cloud プラットフォームは、ユーザーの操作なしでセッションIDを更新する責任があります。 ユーザーのアクションによって、Web ブラウザーが Things Cloud にリクエストを送信するだけで十分です。次に、Things Cloud は、セッションIDの更新を実行する必要があるかどうかを調べ、必要に応じて操作を実行します。 Things Cloud は、テナント管理者がニーズに合わせて構成を調整できるように、この動作に関連する広範な構成を提供します。

セッション構成を使用 オプションが有効になっている場合、テナント管理者は次の設定をテナントレベルで構成できます。

フィールド 説明 デフォルト
ユーザー エージェントの検証が必要 オンにすると、1 つのセッションの範囲内で連続するリクエストのヘッダーで送信されたユーザーエージェントが比較され、ユーザーエージェントが変更されたリクエストは承認されません。 false
セッションの絶対的タイムアウト ユーザーが再認証なしで Things Cloud を使用できる最大期間を定義します。 14 日
セッション更新のタイムアウト 絶対的なタイムアウトよりも、はるかに短いことが予想されます。 Things Cloud が新しいトークン(セッションID)の提供を試みるまでの時間を定義します。更新は、Things Cloud が期限切れでないトークンを持つクライアントから HTTP リクエストを受信した場合、トークンを取得してからリクエストを実行するまでの時間が更新タイムアウトよりも長い場合にのみ行われます。 1 日
ユーザーごとの最大並行セッション数 各ユーザーが開始できるセッションの最大数を定義します(例えば、さまざまなマシンまたはブラウザ)。ユーザーがこの制限を超えた場合、最も古いセッションが終了し、ユーザーはこの特定デバイスからログアウトされます。 5 セッション
トークンの有効期限 トークンが有効な時間を定義します。ユーザーは、有効なトークンを使用して Things Cloud にアクセスできます。この構成オプションは常に使用可能で、セッション構成には依存しません。以下のOAI-Secureによるトークン生成をご覧ください。 2 日
備考

時間パラメータは、次のように相互に依存する必要があります:更新タイムアウト < トークンの有効期間 < 絶対的タイムアウト
さらに、更新タイムアウトは、トークンの有効期間の約半分にする必要があります。

したがって、OAI-Secure の標準的な使用例の推奨設定は次の通りです。

  • セッションの絶対的タイムアウト:28,800 秒(8 時間)
  • セッション更新のタイムアウト:2,700 秒(45 分)
  • トークンの有効期限:5,400 秒(90 秒)

このような構成では、セッションの最後のアクティビティがいつ実行されたかに応じて、アイドル タイムアウトは 45 ~ 90 分の範囲になります。

セッショントークンの更新中に、以前のトークンは取り消され、新しいトークンが提供されます。パラメータ renewal token delay は、このプロセスを円滑にし、ユーザーの邪魔にならないようにするために使用される遅延を定義します。古いトークンは、この期間(デフォルトは 1 分)は引き続き有効です。このようにして、新旧両方のトークンが Things Cloud によって受け入れられます。このパラメータは、プラットフォームレベルでのみ構成可能であり、テナント管理者は変更できません。

OAI-Secure によるトークン生成

OAI-Secure は、主にブラウザの Cookie に保存された JWT に基づいています。また、レスポンス本文で JWT を生成するためにも使用できます。トークンと Cookie の有効期間は、カテゴリ oauth.internal に属するテナントオプションによって構成できます。

ブラウザの Cookie に保存されている JWT トークンのデフォルトの有効期限は 2 週間です。これは、テナントオプションで変更できます。

最小許容値は 5 分です。

JWT トークンをブラウザに保存するために使用される Cookie には、テナントオプションで変更できる独自の有効期限があります。

デフォルト値は 2 週間です。ユーザーがブラウザを閉じたときに Cookie を削除するには、負の値を設定します。

レスポンス本文の JWT の有効期限の設定

レスポンス本文で生成される JWT トークンの有効期限は、次のテナントオプションで構成されます。

詳細については、Things Cloud OpenAPI仕様 の Tenant API をご覧ください。

備考
マネジメントテナント への外部通信がブロックされている場合、安全な方法(SSH トンネル経由など)でのみテナントにアクセスできます。 これは、基本認証をそのまま使用できることを意味しています。 また、外部認証サーバーからの通信もブロックされるため、シングルサインオンは利用できません。 そのため、マネジメントテナント が外部通信をブロックするように設定されている場合、認証方法は自動的に「基本認証」に設定されます。

TFA 設定

テナントにTFAを許可する場合は、二要素認証有効化にします(管理者のみ可能)。

次のオプションを選択できます。

備考
TOTP 方式は、ログインモード「OAI-Secure」でのみ使用できます。

保存をクリックして設定を適用します。

重要
TFA方式を変更するたびに、強制的にログアウトされます。 ユーザーの TFA 設定が消去され、再度設定する必要があります。
備考
「devices」ロールを持つユーザーは、TFA と TOTP から除外されます。 これは、TOTP がすべてのユーザーに強制されている場合にも当てはまります。

アプリケーション設定の変更

設定 メニューの アプリケーション をクリックして、アプリケーションの設定を変更します。

Application settings

デフォルトアプリケーションでは、テナント内のすべてのユーザーに適用されるデフォルトアプリケーションをリストから選択できます。 例えば、特定のアプリケーションを指定せずにドメイン名のみでプラットフォームにアクセスすると、デフォルトアプリケーションとして選択されたアプリケーションが、デフォルトのランディング ページとして使用されます。

備考
すべてのユーザーは、このアプリケーションへのアクセスが必要です。

アクセス制御 から、管理者は Things Cloud API上で、クロスオリジン リソース共有(CORS)を使用可能にすることができます。

許可されたドメイン 設定により、JavaScript Webアプリケーションは REST API と直接通信できるようになります。

詳細については、http://enable-cors.org をご覧ください。

プロパティライブラリの管理

設定メニューのプロパティライブラリをクリックして、インベントリオブジェクト、アラーム、イベント、テナントにカスタムプロパティを追加します。

Properties library

カスタムプロパティを使用すると、Things Cloud 組み込みオブジェクトのデータモデルを拡張できます。次のカスタム値を作成できます。

備考
カスタムプロパティは、インベントリロールの権限に関係なく、テナントのすべての認証済みユーザに表示されます。

カスタムプロパティの追加

  1. 目的のプロパティのタブを選択し、プロパティを追加をクリックします。

  2. 表示されるダイアログボックスで、プロパティの識別子として固有の名前とラベルを指定します。そして、ドロップダウンリストからデータタイプを選択します。

  3. さらに、新しいプロパティの検証ルールを選択します。

チェックボックス 説明
必須 選択した場合、プロパティを指定する必要があります(アラームの作成中など)。プロパティタイプが「ブール値」の場合は使用できません。
デフォルト値 カスタムプロパティ フィールドに自動的に入力されるデフォルト値を指定します。タイプが「文字列」のプロパティでのみ使用できます。
最小値 最小の整数値を入力します。
最大値 最大の整数値を入力します。
最小長 文字列に必要な最小の長さを入力します。
最大長 文字列に必要な最大の長さを入力します。
正規表現 カスタムプロパティ フィールドに入力するために必要な正規表現を追加します。
  1. 保存 をクリックして、新しいプロパティを作成します。

カスタムプロパティの編集

  1. リスト内のプロパティ名をクリックして開きます。
  2. 編集を行います。フィールドの詳細については カスタムプロパティの追加 をご覧ください。
  3. 保存 をクリックして設定を保存します。

カスタムプロパティの削除

  1. リスト内のプロパティ名をクリックして開きます。
  2. 削除 をクリックしてプロパティを削除します。

接続設定の管理

接続ページでは、さまざまなプロバイダーの資格情報を管理できます。資格情報を追加または置換するには、管理者権限が必要です。

現在、次のプロバイダー設定を指定できます。

資格情報の入力または置換

  1. 目的のプロバイダーのタブに切り替えます。
  2. プロバイダーのURLを入力します。
  3. プロバイダープラットフォームの資格情報を入力します。プロバイダーに応じてこれらの資格情報は、プロバイダープラットフォームのユーザーアカウントの資格情報になるか、あるいは Things Cloud 接続ページで登録できる資格情報となります。プロバイダープラットフォームのユーザーアカウントに表示されます。
  4. 最後に、資格情報を保存をクリックして設定を保存します。

使用しているプロバイダーによっては、追加フィールドがある場合があります。追加フィールドについては、各エージェントのマニュアルで説明されています。プロトコル統合ガイド をご覧ください。

二要素認証

二要素認証(TFA)ユーザーが知っているもの(ユーザー名とパスワード)と所有しているもの(例えばスマートフォン)、または自身の一部(指紋など)という、2つの異なる要素を組み合わせて認証を完了するだけの、追加のセキュリティーレイヤです。TFAの設定方法の詳細については、認証設定 をご覧ください。

特定のユーザーに対してTFAが有効になっているかどうかを確認するには、ユーザーページに移動し、パスワード強度の列の右側にあるTFAステータスの列を確認します。鍵アイコンは、TFAが有効になっていることを示し、その上にポインターを置くと、使用されている手段が表示されます。

TFA status

TOTP

必要条件
ユーザーは自分のスマートフォンにTOTPアプリケーション(Google Authenticator 推奨)をインストールする必要があり、これはApp StoreとPlay Storeの両方で無料で入手できます。

設定方法

TOTPは各ユーザーが設定しなければなりません。右上のユーザー設定を開いて、二要素認証を設定をクリックすると、設定を開始できます。

Trigger TOTP setup
TFAを有効にすると、ログイン時にQRコードが表示され、インストールされているTOTPモバイルアプリケーションでスキャンします。

QRコードの読み取りができない場合は、手動でシークレットを挿入することもできます。

TOTP setup process
処理後、モバイルアプリケーションは、認証プロセスを完了するために使用できる新しいコードを30秒ごとに生成します。

取り消し方法

設定は個々のユーザーが行う必要がありますが、シークレットを取り消すことができるのは、管理アプリケーションのテナント管理者のみです。そのため、ユーザーが電話を紛失したり、アプリケーションをアンインストールしたりした場合は、テナント管理者に連絡する必要があります。 TOTP は各ユーザーが個別に設定する必要があります。

必要条件

ユーザーは自分の TOTP シークレットを取り消すことはできません。 ユーザーのシークレットは、それぞれの親ユーザーによってのみ取り消されます。

ロールと権限:

  • シークレットを取り消す: 権限タイプ「ユーザー管理」の管理者または作成権限
  1. 管理アプリケーションで、アカウント > ユーザーに移動し、ユーザー ページでユーザーを選択します。
  2. ログインオプションまで下へスクロールします。
  3. TOTP シークレットの取り消しをクリックします。
  4. 取り消しをクリックして確定します。
TOTP secret revoke

ユーザーのTOTP無効化

ユーザーが TOTP(およびTFA)の使用を完全にオフにしたい場合は、シークレットの取り消し、TOTP設定の強制を無効にする必要があります。 TOTP は各ユーザーが個別に設定する必要があります。

必要条件
ロールと権限:

  • シークレットを取り消すには: 権限タイプ「ユーザー管理」の管理者または作成権限
  • TOTP 強制を無効にするには: 権限タイプ「ユーザー管理」の管理者権限

ユーザーのTOTPを無効にする方法は次の通りです。

  1. 管理アプリケーションで、アカウント > ユーザーに移動し、ユーザー ページでユーザーを選択します。
  2. ログインオプションまで下へスクロールします。
  3. ユーザーに TOTP 設定を強制チェックボックスをオフにします。
  4. TOTP シークレットの取り消しをクリックします。
  5. 取り消しをクリックして確定します。
  6. 保存をクリックして変更を保存します。
TOTP disable user

シングルサインオンの構成

Things Cloud はシングル サインオン (SSO) 機能を提供します。これにより、ユーザーは OAuth2 プロトコルを使用して単一のサードパーティ認可サーバー (Azure Active Directory (ADD) など) にログインできるようになります。 現在、認証コード付与は JWT 形式のアクセストークンでのみサポートされています。 SAML はサポートされていません。 標準の SSO に加えて、 Things Cloud では認可サーバーからのアクセストークンをベアラートークンとして直接使用して、プラットフォームリソースにアクセスすることもできます。 詳細については、認可サーバーからの OAuth2 アクセス トークンによる認証の構成をご覧ください。

必要条件
SSO 機能を使用するには、次の要件を満たす必要があります。

  • 利用中の認可サーバーがOAuth2認証コード付与に対応している
  • アクセス トークンは JWT として発行され、トークンの内容がわかる
  • JWT は、一意のユーザー識別子、「iss」 (発行者)、「aud」 (対象者)、および「exp」 (有効期限) フィールドで構成されている
  • すべてのマイクロサービスは Microservice Java SDK バージョン 10.4.6 で構築されているが、それ以降であることが望ましい
  • オンプレミスインストールの場合、ドメインベースのテナント解決が適切に構成されている
  • 親テナント の場合、基本構成でエンタープライズドメインをリダイレクト URI として設定する必要がある。SSO プロバイダーが許可されたドメインのリストを持っている場合は、エンタープライズドメインをそのリストに追加する必要がある
    ※「自身のユーザー管理」の読み取り権限以上のロールをユーザーに割り当てる必要があります。割り当てられていない場合、ユーザーはログインできません。
  • SSO 機能は Cookie テクノロジーに基づいて構築されているため、ユーザーはブラウザの設定で Cookie を有効にする必要がある

構成設定

SSO 機能を有効にするには、管理者は認可サーバーとの接続を設定する必要があります。 これは管理アプリケーションで行われます。

構成アクセス

SSO 構成は、マネジメントテナント によって排他的にアクセスできるように構成できるため、他のテナントが構成にアクセスすることはできません。 このようなテナントのユーザーは構成を更新できません。これにより、SSOが正しく設定されず、他のユーザーがSSO経由でログインできなくなるリスクがなくなります。マネジメントテナントは、特定のテナントのSSO構成へのアクセスを許可または制限できます。 マネジメントテナントは、特定のテナントの SSO 構成へのアクセスを許可または制限できます。 設定アクセスの詳細については、Things Cloud OpenAPI仕様 の ログインオプション API をご覧ください。

構成ビュー

認証 ページで シングル サインオン タブをクリックします。 このタブは、SSO 構成にアクセスできるテナントにのみ表示されることに注意してください。

左上でテンプレートを選択できます。 選択したオプションはパネルの外観に影響します。 デフォルトのテンプレートは「カスタム」です。これにより、OAuth2 認証コード付与を使用する事実上すべての認可サーバーで非常に詳細な構成が可能になります。 他のテンプレートは、well-known かつサポートされている認可サーバーの簡略化されたビューを提供します。 次の手順では、最初に「カスタム」テンプレートの使用方法を定義し、続いて Azure Active Directory 専用のビューを定義します。

カスタムテンプレート

カスタム認証リクエスト

OAuth プロトコルは HTTP リクエストとリダイレクトの実行に基づいているため、一般的なリクエスト構成が提供されます。

シングル サインオン ページの最初の部分は、リクエスト構成で構成されます。ここでは、トークンおよびリフレッシュリクエストの場合の HTTP リクエストアドレス、リクエストパラメーター、ヘッダーおよび本文を構成できます。認証方法は、GET、token、およびPOSTリクエストによるリフレッシュメソッドとして実行されます。

備考
各リクエストの本文フィールドは、プレースホルダーに値を入力した後、リクエスト内で「そのまま」送信されることに注意してください。 これは、Things Cloud によってエンコードされていないことを意味します。 多くの認可サーバーでは、本文内の値を URL エンコード (x-form-urlencoded) する必要があります。 これは、既にエンコードされた値を本文フィールドに入力することで実現できます。

ログアウトリクエストの指定はオプションです。 フロントチャネルシングルログアウトを実行します。構成されている場合、ユーザーは Things Cloud からログアウトした後、定義された認可サーバーのログアウト URL にリダイレクトされます。

カスタムログアウトリクエスト

シングルサインオン ページの 基本 セクションは、次の構成設定で構成されます。

カスタム基本構成

フィールド 説明
リダイレクト URI リダイレクトパラメーター。リクエスト定義で ${redirectUri} プレースホルダーとして使用できます
クライアント ID OAuth 接続のクライアント ID。 リクエスト定義で ${clientId} プレースホルダーとして使用できます
トークン発行者 OAuthトークン発行者
ボタン名 ログイン ページのボタンに表示される名前
プロバイダー名 プロバイダーの名前
対象 JWT の予期される aud パラメータ
ログインページに表示 ログインオプションが有効かどうかを示します

ユーザーがログインするたびにアクセストークンの内容が検証され、これが Things Cloud プラットフォームへのユーザーアクセスの基礎となります。次のセクションでは、JWT クレームとプラットフォームへのアクセスの間のマッピングについて説明します。

カスタムアクセスマッピング

上記の例でユーザーがログインしようとすると、デコードされた JWT クレームは次のようになります。

{
...
"user": "john.wick",
...
}

このユーザーには、「region north」という名前のデバイスグループに対して、グローバルロール「business」、デフォルトアプリケーション「cockpit」、インベントリロール「Manager」および「Reader」へのアクセス権が付与されます。

ユーザーのアクセストークンに一致するアクセスマッピングがない場合、ユーザーはログインしようとすると「アクセスが拒否されました」というメッセージが表示されます。これは、アクセスマッピングが定義されていないため、すべてのユーザーが SSO を使用してログインできなくなった場合にも発生します。

新しいルールを追加するには、下部にある アクセス マッピングの追加 または インベントリロールの追加 をクリックします。 アクセスマッピングステートメントは、次の図のように複数のチェックで構成されます。 およびをクリックすると、既存のステートメントにルールを追加できます。 ルールを削除するには、マイナスボタンをクリックします。

新しいロールは、一致するすべてのアクセスマッピングからユーザーに追加されます。 1 つのアクセスマッピングステートメントがロール「admin」を割り当て、2 つ目のアクセス マッピングステートメントがロール「business」を割り当て、両方が定義された条件を満たしている場合、ユーザーにはグローバル ロール「business」および「admin」へのアクセスが許可されます。

演算子として「=」を使用する場合、 フィールドでワイルドカードを使用できます。 サポートされているワイルドカードはアスタリスク (*) で、0 個以上の文字に一致します。 たとえば、「cur*」と入力すると、「cur」、「curiosity」、「cursor」、および「cur」で始まるものと一致します。 「f*n」は、「fn」、「fission」、「falcon」、および「f」で始まり「n」で終わるものすべてに一致します。

アスタリスク文字が文字通り一致する必要がある場合は、バックスラッシュ (\) を追加してエスケープする必要があります。 たとえば、文字列「Lorem*ipsum」と正確に一致するには、値は「Lorem\*ipsum」である必要があります。

カスタムアクセスマッピング

この場合、次のクレームが条件に一致します。

{
...
"user": {
   "type": "human"
},
"role": [
   "ADMIN"
],
...
}

「in」演算子を使用して値がリストに存在することを確認するオプションがあります。 値は他のオブジェクトに埋め込むこともできます。 この場合、キー内のドットは、埋め込まれたオブジェクトを参照していることを意味します。

ユーザーアクセスマッピング構成には、次のオプションが用意されています。

カスタムアクセスマッピング

上記の 3 つのオプションのいずれかを選択すると、管理者はユーザー管理で SSO ユーザーのロールを編集することもできます。 詳細については、ユーザーガイド管理 > 権限の管理 > グローバルロールの割り当てをご覧ください。

ユーザーがアクセストークンを使用してログインすると、ユーザー名は JWT クレームから取得できます。 クレーム名は、ユーザー ID 構成 ウィンドウで構成できます。 ユーザー ID は、ログインプロセス中に認可サーバーからプラットフォームに送信される認証トークンペイロードの任意のトップレベル フィールドに設定できます。 監査ログ内の認証トークンを検査して、正しいフィールドが使用されていることを確認することをお勧めします (トラブルシューティング をご覧ください)。

ユーザー ID 構成

定数値を使用 チェックボックスが選択されている場合、SSO 経由で Things Cloud プラットフォームにログインするすべてのユーザーに1つのユーザー ID が使用されます。 これは、SSO 経由でログインするすべてのユーザーが、Things Cloud プラットフォームで同じユーザー アカウントを共有することを意味します。 このオプションの使用は推奨されません。

次に、ユーザーデータマッピングを構成できます。

ユーザーデータマッピング

ユーザーのログイン時に、名、姓、電子メール、電話番号などのユーザー データも JWT クレームから取得できます。 各フィールドは、JWT からデータを取得するために使用されるクレーム名を表します。 ユーザー データ マッピングの構成はオプションであり、管理マネージャーは必須フィールドのみを使用できます。構成が空であるか、JWT トークンでクレーム名が見つからない場合、ユーザーデータの値は空として設定されます。

エイリアスのマッピングは SSO ログインのコンテキストでは使用されないため、使用できません。

各アクセストークンは、サイニング証明書によって署名されます。 現在、サイニング証明書を構成するには 3 つのオプションがあります。

  1. Azure AD 証明書検出アドレスを指定します。

署名検証 Azure

  1. ADFS マニフェスト アドレスを指定する (ADFS 3.0 の場合)。

署名検証 ADFS

  1. 証明書の公開キーを手動で Things Cloud に提供します。証明書の定義には、アルゴリズム情報、公開キーの値、および有効期間が必要です。

署名検証 Custom

  1. JWKS (JSON Web Key Set) URI を指定します。JWKS は、認可サーバーによって発行されたトークンを検証するために使用される公開キーを含む JWK オブジェクトのセットです。

署名検証 JWKS

備考
Things Cloud は、(n、e) パラメータ ペアまたは「x5c」証明書チェーンとして、RSA キーを含む証明書のみをサポートします。 他のキー タイプ (楕円曲線など) はサポートされていません。

プレースホルダー

一部のフィールド内では、実行時に Things Cloud によって解決されるプレースホルダーを使用できます。利用可能なプレースホルダーは次のとおりです。

プレースホルダー 説明
clientId クライアント ID フィールドの値
redirectUri リダイレクト URI フィールドの値
code 認証リクエストに応じて認可サーバーによって返されたコード
refreshToken トークン要求後に認可サーバーから返されたリフレッシュトークン

これらのプレースホルダーは、次のフィールドの認証リクエスト、トークンリクエスト、リフレッシュリクエスト、およびログアウトリクエストで使用できます。

フィールド内でプレースホルダーを使用するには、ドル記号を先頭に付けた 2 つの中括弧内にプレースホルダーを置きます。 Placeholder standalone

プレースホルダーはテキストの一部として使用することもできます。 Placeholder text

備考
プレースホルダーが正しいかどうかは検証されません。 認識されないプレースホルダーやスペルが間違っているプレースホルダーは、処理されずにテキスト内に残されます。

認可サーバーからの OAuth2 アクセス トークンによる認証の構成

認可サーバーからのアクセス トークンの使用を Things Cloud に直接リクエストできます。 これにより、アプリケーションまたはユーザーはプラットフォームにログインせずにリソースにアクセスできます。 またはBasic認証を使用することもできます。これにより、認可サーバーを利用してアプリケーションのアクセストークンを取得し、後続のリクエストで Things Cloud に送信できるようになります。

必要条件
この機能には、上記の要件に加えて次のものが必要です。

  • 認可サーバーは OAuth2 クライアント資格情報付与タイプをサポートする必要がある
  • すべてのマイクロサービスは、Microservice Java SDK バージョン 1018.6.0 以降で構築されている

外部トークン構成 セクションで、この認証オプションを有効または無効にします。 External token disabled

この認証が有効な場合、標準的な JWT トークン認証よりも優先されます。つまり、例えばAuthentication: Bearer {{access token}}ヘッダを持つThings CloudへのHTTPリクエストは、アクセストークンのソースがThings Cloudによって発行されたトークンではなく、あなたの認可サーバであると仮定します。 ユーザIDまたはアプリケーションIDをアクセストークンのトップレベルクレームに設定します。

External token user id

Things Cloud は、構成されたユーザー ID またはアプリケーション ID が割り当てられるユーザーを作成します。 さらに、このユーザーには、アクセス マッピング セクションで定義されたアプリケーションにアクセスするためのロールが付与されます。

備考
これが設定されている場合、アプリケーションを代表する Things Cloud ユーザー(アクセストークンはクライアント認証情報フローで取得されます)、または認可サーバーのユーザー(アクセストークンはパスワード付与タイプで取得されます)を作成できます。

デフォルトでは、Things Cloud は、トークンの有効期限が切れていないこと、およびその署名が以前に構成した署名と一致することを検証します。 必要な資格情報を使用してイントロスペクションまたはユーザー情報検証を構成することで、トークンの検証を強化できます。 このようにして、プラットフォームはアクセストークンが意図的に無効化されたか期限切れになったかどうかを認識します。無効なアクセストークンでは、Things Cloud リソースにアクセスできません。

イントロスペクション エンドポイント

Things Cloud は、トークンイントロスペクションを使用して、アプリケーションのアクセストークンの有効性を検証します。 一般に、このエンドポイントは、クライアント資格情報フローまたはその他の OAuth2 フローを介して取得されたアクセストークンに使用できます。

イントロスペクションを構成するには、イントロスペクションエンドポイントと、アクセストークン、クライアント ID、クライアントシークレット、および「Authorization」リクエスト ヘッダーを含む URL エンコード (x-form-urlencoded) 本文を指定します。 Things Cloud は、認可サーバーのイントロスペクションエンドポイントにアクセストークンのステータスを照会するようリクエストします。 トークンがアクティブな場合は、トークンの署名の検証に進みます。

External token introspection validation

アクセス トークン検証の頻度を構成して、イントロスペクションを実行する頻度を設定できます。 同じアクセス トークンを取得するために常に認可サーバーを呼び出すのはコストがかかる可能性があるためです。トークンの検証ステータスは、指定された期間、内部的にキャッシュされます。 その間にトークンが取り消された場合、Things Cloud は次の検証中にのみ認識します。つまり、トークンは次の検証まで引き続き考慮されます。 これを回避するには頻度を使用します。 デフォルト値は 1 分です。

External token validation interval

ユーザー情報エンドポイント

ユーザー情報リクエストは、ユーザーのアクセス トークンの有効性を確認するためにも使用できます。 イントロスペクションとは異なり、ユーザー情報リクエストにはユーザーコンテキストが必要です。 これは、クライアント資格情報フローで取得したアクセス トークンを検証するためには使用できないことを意味します。

External token userinfo validation

注意
2 つの検証方法のいずれかを使用する場合は、認可サーバーがイントロスペクションまたはユーザー情報エンドポイントを公開していることを確認してください。

Azure AD 統合

この統合は、OAuth2 と OpenID Connect を使用して Azure AD との統合が正常に検証されました (SAML はサポートされていません)。 構成手順は、https://docs.microsoft.com/en-us/azure/active-directory/develop/v1-protocols-oauth-code で参照できます。

次の手順は、Things Cloud で SSO に Azure AD (Azure Active Directory) を使用する方法を示しています。

必要条件
Azure AD への管理アクセスが必要です。

Azure AD の構成

Things Cloud を Azure AD に接続するには、Azure AD でアプリ登録を作成する必要があります。

  1. 左側の 管理 の下にある アプリの登録 を選択し、上部にある 新規登録 をクリックします。
  2. 表示されたウィンドウで、新しいアプリ登録の名前を入力します。
  3. リダイレクト URI タイプとして「Web」を選択し、テナントの OAuth エンドポイントへの URL (例: https://documentation.cumulocity.com/tenant/oauth”*) を入力します。 この値はThings Cloud テナントからのものです。管理 > 設定 > 認証 > シングル サインオン に移動します。リダイレクト URL は次のとおりです。 プラットフォームによって事前に入力されます。
  4. 登録 をクリックしてアプリ登録を作成します。

アプリ登録の詳細ページの概要には、アプリケーション (クライアント) ID やディレクトリ (テナント) ID (Things Cloud のテナント用) など、後で必要になるいくつかの ID とエンドポイントが含まれています。

App registration overview

さらに、アプリの登録には、Things Cloud が認証に使用するシークレットが必要です。

  1. アプリ登録の詳細ページで、左側の 管理 の下にある 証明書とシークレット をクリックします。
  2. 新しいクライアント シークレット を選択します。
  3. 説明を入力し、有効期限を選択します。
  4. 追加 をクリックしてシークレットを追加します。
注意
  • 新しいシークレットの値を別の場所にコピーします。 ページを離れると表示されなくなります。
  • シークレット文字列には「=」文字を含めないでください。これは、後で URL で使用する場合と競合する可能性があります。 存在する場合は、新しいものを作成します。

必要に応じて、Things Cloud で使用するユーザーを Azure AD に作成します。

Things Cloud での Azure AD の SSO 構成

管理アプリケーションで 設定 > 認証 に移動し、シングル サインオン タブに切り替えます。

GET リクエストにより関連情報を取得します。

https://login.microsoftonline.com/<Directory tenant ID>/.well-known/openid-configuration

レスポンスは次のようになります。

  {
      "token_endpoint": "https://login.microsoftonline.com/4d17551b-e234-4e18-9593-3fe717102dfa/oauth2/token",
      "token_endpoint_auth_methods_supported": [
          "client_secret_post",
          "private_key_jwt",
          "client_secret_basic"
      ],
      "jwks_uri": "https://login.microsoftonline.com/common/discovery/keys",
      "response_modes_supported": [
          "query",
          "fragment",
          "form_post"
      ],
      "subject_types_supported": [
          "pairwise"
      ],
      "id_token_signing_alg_values_supported": [
          "RS256"
      ],
      "response_types_supported": [
          "code",
          "id_token",
          "code id_token",
          "token id_token",
          "token"
      ],
      "scopes_supported": [
          "openid"
      ],
      "issuer": "https://sts.windows.net/4d17551b-e234-4e18-9593-3fe717102dfa/",
      "microsoft_multi_refresh_token": true,
      "authorization_endpoint": "https://login.microsoftonline.com/4d17551b-e234-4e18-9593-3fe717102dfa/oauth2/authorize",
      "device_authorization_endpoint": "https://login.microsoftonline.com/4d17551b-e234-4e18-9593-3fe717102dfa/oauth2/devicecode",
      "http_logout_supported": true,
      "frontchannel_logout_supported": true,
      "end_session_endpoint": "https://login.microsoftonline.com/4d17551b-e234-4e18-9593-3fe717102dfa/oauth2/logout",
      "claims_supported": [
          "sub",
          "iss",
          "cloud_instance_name",
          "cloud_instance_host_name",
          "cloud_graph_host_name",
          "msgraph_host",
          "aud",
          "exp",
          "iat",
          "auth_time",
          "acr",
          "amr",
          "nonce",
          "email",
          "given_name",
          "family_name",
          "nickname"
      ],
      "check_session_iframe": "https://login.microsoftonline.com/4d17551b-e234-4e18-9593-3fe717102dfa/oauth2/checksession",
      "userinfo_endpoint": "https://login.microsoftonline.com/4d17551b-e234-4e18-9593-3fe717102dfa/openid/userinfo",
      "kerberos_endpoint": "https://login.microsoftonline.com/4d17551b-e234-4e18-9593-3fe717102dfa/kerberos",
      "tenant_region_scope": "EU",
      "cloud_instance_name": "microsoftonline.com",
      "cloud_graph_host_name": "graph.windows.net",
      "msgraph_host": "graph.microsoft.com",
      "rbac_url": "https://pas.windows.net"
  }

次に、構成に次の値を入力します。

Azure Things Cloud
ログインURL; OpenID 構成; トークンエンドポイントの始まり Azure AD アドレス Azure AD テナントのアドレス (例: “https://login.microsoftonline.com”)
ホーム > 概要 > プライマリ ドメイン テナント <ディレクトリ名>.onmicrosoft.com (例: “admtest.onmicrosoft.com”)
OpenID 設定「発行者」 トークン発行者 HTTP アドレス形式のトークン発行者の値: 「https://sts.windows.net/<ディレクトリ テナント ID>/」。 これは末尾のスラッシュがないと機能しないことに注意してください。
アプリ登録 > {アプリケーション} > アプリケーション (クライアント) ID アプリケーションID たとえば、「7fd1ed48-f4b6-4362-b0af-2b753bb1af2b」
リダイレクト URI Things Cloud テナントのアドレスに /tenant/oauth が続く
アプリ登録 > {アプリケーション} > 証明書とシークレット > 値 クライアント シークレット Azure AD クライアント シークレット (例: “hE68Q~uC1.BlSzGJSDC3_UEFvvyIZvRcCxbvV345”)
OpenID 設定元 公開キー検出 URL 「https://login.microsoftonline.com/common/discovery/keys」または「https://login.microsoftonline.com/<ディレクトリ テナント ID>/discovery/keys」

オプションでシングル ログアウトを構成できます。

フィールド 説明
ログアウト後のリダイレクト ログアウト後にユーザーを認可サーバーのログアウト エンドポイントにリダイレクトすることにより、シングル ログアウトをアクティブ化します。
リダイレクト URL 認可ーから正常にログアウトした後にユーザーをリダイレクトするアドレス

Things Cloud で SSO を構成した後、ログインを試行できます。 このユーザーにまだアクセス マッピングがない場合、「アクセスが拒否されました」エラーが発生する可能性があります。 ただし、監査ログ (管理 > アカウント > 監査ログ) に「ユーザー ログイン」イベントと JSON Web トークンが表示されるはずです。

内容は次のようになります。

{
    "typ": "JWT",
    "alg": "RS256",
    "x5t": "2ZQpJ3UpbjAYXYGaXEJl8lV0TOI",
    "kid": "2ZQpJ3UpbjAYXYGaXEJl8lV0TOI"
} {
    "aud": "7fd1ed48-f4b6-4362-b0af-2b753bb1af2b",
    "iss": "https://sts.windows.net/4d17551b-e234-4e18-9593-3fe717102dfa/",
    "iat": 1660815959,
    "nbf": 1660815959,
    "exp": 1660820080,
    "acr": "1",
    "aio": "ASQA2/8TAAAAg0xPUeu6HKAlgK3vZJsW8TdejlNB3BGSz4XFmJLzPt0=",
    "amr": [
        "pwd"
    ],
    "appid": "7fd1ed48-f4b6-4362-b0af-2b753bb1af2b",
    "appidacr": "1",
    "family_name": "Doe",
    "given_name": "Jane",
    "ipaddr": "51.116.186.93",
    "name": "Jane Doe",
    "oid": "afbff765-592e-4ae1-9334-b968dad59c84",
    "rh": "0.AXkAG1UXTTTiGE6Vkz_nFxAt-kjt0X-29GJDsK8rdTuxryuUAAw.",
    "scp": "openid User.Read User.Read.All User.ReadBasic.All",
    "sub": "zRTnTukAjU11ME1aqiPMOdwk9jVNmInXbeuoUr_3cYk",
    "tid": "4d17551b-e234-4e18-9593-3fe717102dfa",
    "unique_name": "jane@admtest.onmicrosoft.com",
    "upn": "jane@admtest.onmicrosoft.com",
    "uti": "IcTqpKPIA0G_P1Lyw6xBAA",
    "ver": "1.0"
} [
    256 crypto bytes
]

カスタム テンプレート のセクションにある説明と同様の方法でクレームを使用してユーザー属性をマップし、アクセス許可を付与できるようになりました。

Keycloak 統合

グローバル ログアウト機能 (Keycloak バージョン 12.0.0 以降で利用可能)

Keycloakとの統合により、管理者はOpenId Connectに基づくグローバル・ログアウト機能を使用できるようになります。 Keycloak認可サーバーからのイベントは、ログインプロセスで使用されるトークンと同じ方法で検証されるログアウトトークンとともに、すべてのアプリケーション(Things Cloudプラットフォームを含む)に送信されます。 この機能を使用すると、特定のユーザーのアプリケーションとKeycloakの両方でセッションを終了できます。

グローバルログアウト機能を設定するには、次の手順に従います。

  1. 管理者コンソールに移動します。
  2. テナントの SSO 構成で使用されるレルムを選択します。
  3. 構成セクションのクライアントに移動します。
  4. SSO 構成で使用するクライアントを選択します。
  5. バックチャネル ログアウト URL フィールドに “https://mytenant.je1.thingscloud.ntt.com/user/logout/oidc” を設定します。

グローバル ログアウト機能を使用するには、次の手順に従います。

  1. 管理者コンソールに移動します。
  2. テナントの SSO 構成で使用されるレルムを選択します。
  3. 管理 セクションの ユーザー に移動します。
  4. 特定のユーザーを選択します。
  5. 管理 セクションの セッション タブに移動し、ログアウト をクリックします。

すべてのユーザーのログアウト機能

Keycloakは、管理者がすべてのSSOユーザーをログアウトできる機能も提供します。

すべてのユーザーのログアウト機能を設定するには、次の手順に従います。

  1. 管理者コンソールに移動します。
  2. テナントの SSO 構成で使用されるレルムを選択します。
  3. 構成セクションのクライアントに移動します。
  4. SSO 構成で使用するクライアントを選択します。
  5. 管理者 URL を “https://mytenant.je1.thingscloud.ntt.com/user/keycloak” に設定します

すべてのユーザーのログアウト機能を使用するには、次の手順に従います。

  1. 管理者コンソールに移動します。
  2. テナントの SSO 構成で使用されるレルムを選択します。
  3. 管理 セクションの セッション タブに移動し、すべてログアウト をクリックします。

すべてのユーザーのログアウト イベントは、1 つの Keycloak レルムのスコープ内でのみ実行されることに注意してください。 さらに、SSO 機能の構成として使用されているクライアントに正しい 管理 URL 値があるテナントに対してのみ送信されます。

セッションタブで、Keycloak管理者は、それぞれのクライアントに存在するアクティブなセッションの数を確認し、ログアウトイベントによって影響を受けるテナントとユーザーの数を見積もることもできます。

すべてのユーザーのログアウト イベントがテナントによって受信されたか、単一ユーザーのログアウトイベントが受信されたかを確認するために、Things Cloud 管理者は監査ログにログアウトイベントに関する情報があるかどうかを確認できます。 監査ログは、管理アプリケーションの 監査ログ タブの アカウント で利用できます。

トラブルシューティング

プラットフォームに送信された認証トークンのフィールドの一部には、上記で説明した正しい構成に必要な情報が含まれているため、その内容を検査すると特に役立ちます。

管理アプリケーションで、アカウント > 監査ログ をクリックした後、カテゴリ「シングル サインオン」でフィルターし、エントリ「Json Web Token Claims」を探すことができます。

トークンのコンテキストは JSON 形式で表示されます。

Audit token content