---
sourceDocument: Xanadu モバイルの構成とナビゲーション
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ja-JP/xanadu/mobile

 Release :

    - xanadu

ft:locale :

    - ja-JP

ft:publication_title :

    - Xanadu モバイルの構成とナビゲーション

ft:clusterId :

    - mobile

bundleId :

    - mobile

workflow :

    - Platform


---

# モバイルセキュリティ

# モバイルセキュリティ {#ariaid-title1}

* リリースバージョン: Xanadu
* 
* 更新日 2024年08月01日
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 所要時間：10分

ServiceNow モバイル プラットフォームのセキュリティ機能について説明します。

## ﻿ServiceNow モバイル アーキテクチャ {#mobile-security-landing__section_bgc_rmw_3lb}

ServiceNow モバイル アプリは、ServiceNow サーバーインスタンスと、iOS と Android 用のネイティブアプリで構成さ れています。このアプリは、すべてネイティブコードを使用しており、ハイブリッドアプローチではありません。モバイルアプリは、無線ネットワークを介してサーバーとデータを送受信します。  
図 : 1. ServiceNow モバイルアーキテクチャ

## ServiceNow モバイル プラットフォームセキュリティの主な機能の概要 {#mobile-security-landing__section_fwd_m5w_3lb}

* モバイルアプリは、セキュリティで保護された ServiceNow プラットフォームとその API を使用して、ユーザーにシームレスなモバイルエクスペリエンスを提供しています。
* アプリ/サーバー間の通信は、OAuth 認証フレームワークによって保護されています。
* ServiceNow アプリのユーザーインターフェイスのほとんどは、ServiceNow プラットフォームのメタデータによって動作します。
* ServiceNow モバイルアプリは ServiceNow プラットフォームからすべてのデータをフェッチし、アプリクライアントレイヤーのローカルキャッシュに保存します。
* 政府機関向けコミュニティクラウド (GCC) の ServiceNow インスタンスの場合は、ローカルデータは暗号化されて保存されます。
  * iOS アプリの場合は、デバイスレベルの PIN または生体認証セキュリティを適用することで、ServiceNow はコアデータに OS レベルの FIPS 140-2 検証済みディスク暗号化を使用します。
  * Android アプリの場合は、ServiceNow は SQLCipher SDK を使用します。この SDK は、Room DB に格納されているすべてのアプリデータに対して FIPS 140-2 検証済み暗号モジュールを使用した暗号化を行います。
  {#mobile-security-landing__ul_yyh_fvw_3lb}
{#mobile-security-landing__ul_bnr_n5w_3lb}

## アプリフローの概要 {#mobile-security-landing__section_zl5_yrw_3lb}

サインインが成功すると、ServiceNow モバイル アプリは最初のユーザーエクスペリエンスの取得を開始します。モバイルアプリはメタデータをフェッチして、インスタンスからランディングホーム画面を表示します。アプリはこのメタデータを使用してホーム画面を表示します。

## データ検索 {#mobile-security-landing__section_i21_dxw_3lb}

データの読み取り
:   ユーザーがモバイルアプリで情報の表示を要求すると、次の手順が実行されます。

    1. モバイルアプリがインスタンスのデータにアクセスするよう要求を送信します。この要求には、要求に必要なトークンと関連データフィールドが含まれます。
    2. インスタンスが要求を受信し、トークンが有効かどうか確認します。
    3. トークンが有効な場合は、インスタンスにより要求が関連 API に送信され、情報がフェッチされます。
    4. インスタンスにより情報がモバイルアプリに返されます。
    {#mobile-security-landing__ol_aqw_fxw_3lb}

ドキュメントのダウンロード
:   ユーザーがアプリにドキュメントのダウンロードを要求すると、次の手順が実行されます。

    1. モバイルアプリがドキュメントにアクセスするよう要求を送信します。この要求には、トークンが含まれます。
    2. インスタンスは要求を受信すると、トークンが有効かどうかを確認します。
    3. インスタンスは、アクセス制御リスト (ACL) ルールをチェックします。
    4. 有効であれば、ドキュメントを表示することができます。
    {#mobile-security-landing__ol_smd_mxw_3lb}

フィールドを更新するためのライトバック
:   ユーザーがモバイルアプリのフィールドを更新すると、次のステップが発生します。

    1. モバイルアプリがインスタンスにトークンとアクションのメタデータを送信します。たとえば、ID または更新するフィールドなどです。
    2. インスタンスが関連 API に基づいてアクションを送信します。
    3. インスタンスがアクションを完了し、モバイルアプリに応答を送信します。
    4. モバイルアプリは応答に基づいて、フィールドの変更と UI のアクションの利用可否を反映させます。
    {#mobile-security-landing__ol_br3_zxw_3lb}

ファイルを添付するためのライトバック
:   ファイルを添付すると、次の手順が実行されます。

    1. モバイルアプリがユーザーにファイル (画像など) の添付を要求します。
    2. モバイルアプリがファイルとトークンをインスタンスに送信します。
    3. インスタンスが関連 API に基づいてファイルを配置します。
    4. インスタンスがモバイルアプリに応答を返信します。
    {#mobile-security-landing__ol_nc1_fyw_3lb}

## モバイル認証 {#mobile-security-landing__section_vl2_nyw_3lb}

﻿ServiceNow モバイル アプリは、OAuth 2.0 を使用したプラットフォーム認証をサポートしています。認証メカニズムには、マルチプロバイダー SSO、MFA、LDAP、ローカル DB、Digest などがあります。﻿ServiceNow モバイル アプリは AppAuth と呼ばれる認証方法を使用しています。AppAuth は、外部モバイルブラウザーを使用してユーザーのログインを行います。

認証フロー

:   モバイルデバイスでアプリにサインインする場合、アプリは資格情報を使用して、インスタンスのある OAuth トークンのネゴシエーションを実行します。iOS キーチェーンには iOS デバイスのトークンが保存されます。Android デバイスはキーストアを使用します。キーチェーンの暗号化は、Galois/Counter Mode (GCM) の AES 256 です。

    最初のログイン時に、インスタンスはユーザーに、アクセストークンとリフレッシュトークンを付与します。これらのトークンはインスタンスで設定可能な時間の間有効です。ユーザーがモバイルアプリを開くと、クライアントはアクセストークンが有効かどうかを確認します。有効であれば、ユーザーはセッションを続行できます。有効でない場合、クライアントは、リフレッシュトークンが有効かどうかを確認します。有効な場合、ユーザーの新しい有効なアクセストークンを読み込むためにリフレッシュトークンが使用され、セッションを続行できます。リフレッシュトークンが有効でない場合、ユーザーは再認証する必要があります。

トークンへのアクセスとリフレッシュ
:
    * モバイルアプリにはユーザーのパスワードは保存されません。
    * モバイルアプリは、認証フローの一部として、OAuth トークンを取得するために必要なクライアント ID を保存します。
    {#mobile-security-landing__ul_dtb_nzw_3lb}

ユーザーの終了
:   管理者がユーザーをインスタンスから削除すると、アクセストークンが有効でなくなり、いかなる操作をしてもユーザーはログアウトされます。
:   図 : 2. モバイル認証ワークフロー

マルチプロバイダー SSO
:   マルチプロバイダー SSO プラグイン \[com.snc.integration.sso.multi.installer\] は、SAML 認証をサポートします。このログインプロセス (AppAuth) では、SAML を使用するときに、このプラグインを使用してユーザーを IDP (SAML プロバイダ) ログインページにリダイレクトします。

マルチファクター認証
:   ユーザーは、MFA プラグイン \[com.snc.integration.multifactor.authentication\] を使用して、Multifactor Authentication 経由でインスタンスにアクセスできます。モバイルアプリでインスタンスを選択すると、ユーザーに対してログインページが表示されます。

LDAP
:   LDAP 認証を使用するには、LDAP 資格情報を使用してアクセスします。ローカルログイン (DB ベース) と同じログインページがユーザーに表示されますが、LDAP サーバーへのバックエンドでは認証が削除されます。

## データセキュリティ {#mobile-security-landing__section_hzq_v1x_3lb}

ServiceNow モバイル アプリはデータセキュリティに SSL/TLS 無線 (OTA) 通信暗号化を使用します。OAuth 認証のエンドポイントは、HTTPS です。

保存データ

:   たとえばお気に入り、ホーム画面、モバイルナビゲータアイテムなどのアプリケーション初期設定データは、デバイスにローカルに格納およびキャッシュされます。このモバイルアプリでは、組織がフィールドサービスのオフライン同期を特に有効化していない限り、インシデントや問題などのレコードデータをデバイスに保存しません。オフラインモード中に保存されたレコードデータは FIPS 140-2 検証済みモジュールで暗号化されます。(iOS 暗号化モジュールと、その暗号化モジュールを使用する Android の SQL 暗号)。

:   図 : 3. 保存データ

移動中データ
:   移動中のデータは、安全な SSL/TLS チャネルを介して、FIPS 140-2 検証済みモジュールで暗号化されます。

データ損失防止
:   ServiceNow には、デバイスとアプリケーションをエンタープライズモビリティ管理 (EMM) スイートによって管理する必要のないデータ損失防止機能があります。これらの機能には、コピー/貼り付けの制限、PIN の適用、添付ファイルのブロック、ぼかし機能などがあります。

コピー/貼り付けを制限
:   コピー/貼り付けの制限は、システムプロパティテーブルのプロパティで定義されます。
:   {#mobile-security-landing__table_mx1_ncx_3lb__entry__2}

    | システムプロパティのフィールド | 値 |
    |-|-|
    | 名前 | glide.sg.clear_pasteboard_when_background |
    | タイプ | True \| False |
    | 値 | true |
    [ ]

    {#mobile-security-landing__table_mx1_ncx_3lb}

アプリ PIN を要求する
:   モバイルデバイスからサインインするか、アプリケーションが 5 分以上非アクティブになるたびに、ユーザーは 6 桁の PIN を入力する必要があります。アプリ PIN の要求はシステムプロパティテーブルのプロパティによって制御されます。
:   {#mobile-security-landing__table_i4w_qcx_3lb__entry__2}

    | システムプロパティのフィールド | 値 |
    |-|-|
    | 名前 | glide.sg.require_mobile_application_pin |
    | タイプ | True \| False |
    | 値 | true |
    [ ]

    {#mobile-security-landing__table_i4w_qcx_3lb}

モバイルデバイスで添付ファイルを無効にする
:   特にモバイルデバイスの添付ファイルをブロックするように ACL ルールを設定できます。`isMobile`メソッドを使用して、要求がモバイルデバイスからのものであるかどうかを確認します。たとえば、スクリプト化された読み込みおよび書き込み ACL に次のチェックが含まれる添付ファイル \[sys_attachment\] テーブルに ACL を追加できます。
:

        if( gs.isMobile() ){
             answer = false;
        }

:   また、添付ファイルテーブルに対する既存の ACL に、このコードを追加することもできます。添付ファイルの ACL ルールが複数ある場合は、すべての ACL ルールで \[管理者優先 \] オプションをオフにする必要があります。

\[アプリをぼかす\] オプションの有効化
:   システムプロパティテーブルの次のシステムプロパティを使用して、モバイルデバイスでフォーカスされていないモバイルアプリをぼかします。
:   {#mobile-security-landing__table_ikr_ydx_3lb__entry__2}

    | システムプロパティのフィールド | 値 |
    |-|-|
    | 名前 | glide.sg.blur_ui_when_backgrounded |
    | タイプ | True \| False |
    | 値 | true |
    [ ]

    {#mobile-security-landing__table_ikr_ydx_3lb}  
    重要:  
    * glide.sg.blur_ui_when_backgrounded システムプロパティは、iOS デバイスと Android デバイスの両方でサポートされています。
    * デフォルトでは、このプロパティの値は <kbd class="ph userinput">false</kbd> に設定されており、オフになっています。
    * Android デバイスの場合、値を <kbd class="ph userinput">true</kbd> に設定してこのプロパティを有効にすると、次の制限が適用されます。

      * 画面共有機能はサポートされておらず、共有アプリの画面は黒く表示されます。
      * ユーザーはスクリーンショットを撮ることができません。

      {#mobile-security-landing__ul_abj_dvd_dwb}

      これらの制限は、glide.sg.blur_ui_when_backgroundedプロパティが有効になっている場合、iOSデバイスには適用されません。
    {#mobile-security-landing__ul_j5q_dxc_dwb}

ペネトレーションテスト

:   ServiceNowは、モバイルアプリのペネトレーションテストを実行するために、サードパーティを利用します。 これは通常、毎年行われますが、より頻繁に行われる場合もあります。これらのテストの結果は顧客に提供されます。セキュリティテストの詳細については、「[KB0538598: Customer Instance Security Testing \| Policy and Procedure (顧客インスタンスセキュリティテスト \| ポリシーおよび手順)](https://support.servicenow.com/kb_view.do?sysparm_article=KB0538598)」を参照してください。

セキュリティパッチ適用
:   セキュリティパッチが必要な場合、モバイル開発チームは、パッチを適用するために標準的な SDLC プロパティに合わせます。

ユーザーデータ収集

:   モバイルアプリでは、ユーザーデータを特に収集しません。

    アプリケーション内のユーザートランザクションや使用法は、Web 上と同様にServiceNowインスタンス上で追跡されます。ユーザーの資格情報については、ユーザーがログインすると、モバイルアプリが Apple キーチェーンまたは Android キーストアに格納されている OAuth トークンについてネゴシエートします。ユーザーの資格情報は保存されません。ユーザーがオプトインすると、次の情報が収集されます。

    * ロケーション
    * カメラへのアクセス
    * Notification
    {#mobile-security-landing__ul_zb3_m2x_3lb}

