web アプリケーションの設定
Last updated
Last updated
Web アプリケーションタイプを選択すると、様々な設定オプションを含む複数のタブがある Web設定 セクションが表示されます。
URLマッチパターンは以下の構造を持っています:
<scheme>://<host><path>
URLマッチパターンにはワイルドカードを含めることができますが、ポート番号を指定することはできません。
システムはスキーム *://<host><path>
にワイルドカードを強制的に使用させ、常にHTTPとHTTPSの両方に一致させます。
ビジネスアプリケーションを管理しているユーザーは、単純化された構造でパターンを表示し、入力します:
<host><path>
内部的には、すべてのソフトウェアコンポーネントはスキームを含む完全なURLマッチパターンを処理する必要があります。
<scheme>://<host><path>
アプリケーション設定モジュールは、パターンを保存する前に以下の一連のルールを使用して検証します:
ユーザーは少なくとも1つのURLマッチパターンを入力しなければなりません。
今日、http://
やhttps://
のようなスキームの指定はサポートされておらず、*://
でなければなりません。
ユーザーが*://
を指定しない場合は、フォームが自動的に*://
プレフィックスを追加します。
ユーザーがポート番号を含むURLを入力した場合、フォームはエラーメッセージを表示します。
ホストコンポーネントは、完全修飾ドメイン名(FQDN)の部分の前に*.
を付けて開始することができます。 このパターンは、*.
ワイルドカードの後に入力された表現と正確に一致するホスト名も一致します。
ホストコンポーネントは、*.
ワイルドカードで始まる場合、完全で有効なドメイン名で終了しなければなりません。
ホストコンポーネントは、*.
ワイルドカードで始まらない場合は、ローカルホスト名(例えば、ドメイン名なし)だけを含めることができます。 これはFQDNを使用しない内部webアプリケーションをサポートするためです。
パスには少なくとも/*
を指定しなければなりません。 ユーザーがパスを入力しない場合、フォームロジックはすべてのパスに一致する/*
を追加します。
パスは*
ワイルドカードで終わらなければなりません。パスがそうでない場合、フォームロジックはパターンに*
を追加します。
パスに*
ワイルドカードを一つ以上含めることはできません。
パターンにはクエリストリング(?...)
を含めてはなりません。 ユーザーがクエリストリングを含むURLを入力した場合、エラーメッセージが表示されます。
パターンにはフラグメント(#...)
を含めてはなりません。ユーザーがフラグメントを含むURLを入力した場合、エラーメッセージが表示されます。
検証ロジックはすべてのアプリケーションにわたる相互に交差するパターンを防ぎます。
全体のマッチパターンは、http://
プレフィックスを追加してすべてのワイルドカードを任意の単語に置き換えた後、標準のURLとして検証されなければなりません。 例えば、ユーザーがパターン*.example.com/foo/*
を入力した場合、展開された形式http://www.example.com/foo/bar
は標準のURL検証ライブラリを使用して簡単に検証できます。
ホスト部分にexample.comのようにドメイン名だけを入力するのは有効です。 しかし、www.example.comのようなホスト名を持つURLには一致しません。
フォームロジックは、ユーザーが入力したパターンを自動修正し、テキストボックスのフォーカスが外れた直後にこれを行い、ユーザーインターフェースはフォームが送信される前に変更を見ることができるようにします。
少なくとも両方のパターンに一致する1つ以上のURLが存在する場合、パターンが別のパターンと交差します。 明示的に、パターン A1 と B1 は、以下の条件がすべて真である場合交差します:
ホスト部分の先頭のワイルドカードをトリミングした後、A1.host
がB1.host
で終了するか、B1.host
がA1.host
で終了します。
パスの末尾のワイルドカードをトリミングした後、A1.path
がB1.path
で始まるか、B1.path
がA1.path
で始まります。
www.example.com/*
はhttp://www.example.com/
またはhttps://www.example.com/
で始まるすべてのURLと一致します。
*.example.com/*
はexample.com
、www.example.com
、intra.example.com
、support.intra.example.com
、...に一致します
*.intra.example.com/*
はintra.example.com
、support.intra.example.com
、...に一致します
example.com/*
は*://example.com/*
にのみ一致します。
www.example.com/foo/*
は*://www.example.com/foo/
で始まるすべてのURLに一致します。
myintranet/*
は内部アプリケーションの有効なパターンです。
www.example.com/foo/*
は既存のアプリマッチパターンです。 この場合、どのアプリケーションにも以下のパターンを使用できます:
*.example.com/bar/*
www.example.com/foobar/*
*.another-example.com/foo/*
test.example.com/foo/*
www.example.*/*
https://*.example.com/*
スキームのため
www.*.com/*
www.*.example.com/*
www.example.com/foo?bar
クエリストリングのコンポーネントがサポートされていないため
*/*
www.example.com/foo#bar
アプリケーションURLではハッシュコンポーネントがサポートされていないため
*.example:1234.com/*
ポートのため(*.example.com/*
使用、すべてのポートはサポートされています)
*.example.com/#foo
*example.com/*
ホストコンポーネントに続くドットがないため
www.example.com/foo/*/bar/*
パスにワイルドカードは1つしか許可されていません
*.customer.*.example.com/*
ホスト部分にワイルドカードは1つしか許可されていません
www.example.com/foo*
は既存のアプリマッチパターンです。 この場合、どのアプリケーションにも以下の交差するパターンを使用できません:
*.example.com/foo/*
www.example.com/foobar/*
www.example.com/fo*
www.example.com/foo/bar/*
www.example.com
は*://www.example.com/*
に変更されます
www.example.com/
は*://www.example.com/*
に変更されます
www.example.com/foo/
は*://www.example.com/foo/*
に変更されます
www.example.com/foo
は*://www.example.com/foo/*
に変更されます
example.com
は*://example.com/*
に変更されます
*.example.com
は*://*.example.com/*
に変更されます
以下のURLを使用して企業のドキュメント管理システムにアクセスしてください:
https://prod.doxydoc.local:32890/start.php
ビジネスアプリケーションの設定時には、次のパターンを使用する必要があります:
*://prod.doxydoc.local/start.php*
URLテーブルは、スピードと信頼性のためにダッシュボードに表示されるウィジェットの1つです。 デフォルトでは、システムはURLを保存しません。特にカスタムアプリケーションでは、プライベートまたは機密性の高い情報が含まれている可能性があるためです。 これが問題でない場合、URLの収集 チェックボックスを有効化することをNexthinkは推奨しています。これはキーページ の設定に役立ちます。 詳細については、キーページドキュメントを参照してください。
URLの収集を有効にすると、適切な権限を持つユーザーは従業員が訪問する個々のURLを見ることができます。
これを無効にすると、システムは拡張機能レベルでURLを収集しなくなります。
システムはデータプライバシーを保護するためにサニタイザーを使用してURLを切り捨てて表示します。
可能な限り、Nexthinkは収集したすべてのURLをサニタイズして機密情報を隠します。 これは個人データ、潜在的な設定の秘密、特定のクエリストリングパターンを削除しようとする試みです。
URLはwebリソースの一意の識別子として機能する文字列です。 URLは4つの主要コンポーネントで構成されています:
オリジン にはプロトコル(http
またはhttps
)、ホスト名(http://nexthink.com
)、ポート番号(80
または443
)が含まれます。例えば、https://nexthink.com:443
です。
パス名 はサーバー上のリソースの正確な場所を指定し、例として/company/about-us
のようになります。
ハッシュ はURLのオプションのコンポーネントであり、たとえばwebページの現在の状態やユーザーの設定など、ブラウザのための情報を格納します。 また、ハッシュ(#
)で始まり、その後に文字列が続きます。URLの中で、confluence.nexthink.com/pages/urlsanitisaation#url-sanitisation-rules
のハッシュセグメントは#url-sanitisation-rules
です。
クエリパラメーター は、サーバーに追加の情報を提供するキーと値のペアです。 これらはクエスチョンマーク(?
)で始まり、アンパーサンド(&
)で区切られます。例として、?projectKey=DCBSM&view=detail
です。 クエリパラメーターは体系的にサニタイズされます。 システムは各キーと値のペアを[key]
に置き換えます。例:
https://confluence.intra.nexthink.com/pages/viewrecentblogposts.action?key=AppExEP
は[key]
でサニタイズされます:
https://confluence.intra.nexthink.com/pages/viewrecentblogposts.action?[key]
URLサニタイズ機構は、URLをサーバーに送信する前に機密情報を除去することを意図しています:
最初に、?key1=value1&key2=value2
のようなすべてのクエリパラメーターを削除し、?[key1]&[key2]
のような角括弧で囲まれたキーだけを保持します。
ハッシュセグメントの他のアンカーを[anchor]
のコードで置き換えます。
以下で説明する特定のパターンに基づいてURLのさらなるサニタイズを受けます。
最終的にURLの過剰な部分を切り捨てます。
このプロセスによって、URLに機密データが誤って露出することがないことが保証されます。
システムがアプリケーションのURLをサニタイズするために使用する一般的なコードの例:
[uuid]
ユニバーサリー・ユニーク・アイデンティファイア(UUID) (3c9dee20-52e9-4ff7-b2ee-e672342bce56
)
[id]
ID番号:/
で始まり、/
もしくは?
で終わる英数字のシーケンス。 非数字文字は次のいずれかになければなりません: .
, ,
, _
, \
, -
。 他の文字は数字でなければなりません。
[json]
{"?????????"}
フォーマットのシーケンスで、?????????
には任意の単語、数字、または次のいずれかの文字 %
, \\
, \
, .
, ,
, :
,_
,-
を含むことができます。
[gib]
識別番号、例えば:MS Outlookで識別番号の後に来るメールID: http://outlook.office.com/mail/inbox/id/
。
[hex]
16進数値:16進数範囲の33個以上の連続する英数字のシーケンス:a-fと0-9。
[int]
整数値:4個以上の連続する数字のシーケンス。
これらのパターンはすべてのアプリケーションに対してグローバルに指定されています。 サニタイズされたURL のどの部分もパターンに一致する場合は、対応するタグに置き換えられます。
例:
https://community.nexthink.com/s/profile/0052p00000BURowAAH
は[hex]
でサニタイズされます:
https://community.nexthink.com/s/profile/[hex]
https://outlook.office.com/mail/inbox/id/AAQkAGJhYmFkMTUxLTQ5NzgtNDNlZi1iZDkzLTQ2YzEwNDIwYzA0YgAQAKafeoP2TMVDozSlcBq2JGU%3D
は[gib]
でサニタイズされます:
https://outlook.office.com/mail/inbox/id/[gib]
サニタイズされたURLの許容可能な最大長があります。 サニタイズされたURLが制限を超えた場合、Nexthinkは超過分を削除し、省略記号(...
)を追加してURLのいくつかが欠落していることを示します。
以下の表は、URLのサニタイズプロセスを示しています:
クエリパラメータの消毒
キーと値のペアがキーに置き換えられる
https://nexthink.com?key1=value1&key2=value2
を参照してください
https://nexthink.com?[key1]&[key2]
を参照してください
ハッシュセグメントの消毒
アンカーハッシュセグメントとクエリハッシュセグメントが曖昧にされる
https://nexthink.com#?name=John#custom-anchor
を参照してください
https://nexthink.com#?[name]#[anchor]
を参照してください
URLトークンの消毒
URLはパターンマッチとタグ置換を使用して消毒される
https://nexthink.com/2024/2fff5c59-18ba-44d3-bd95-4bee056f68ca
を参照してください
https://nexthink.com/[int]/[uuid]
を参照してください
URLの切り詰め
URLが最大長を超えた場合、URLは切り詰められる
https://nexthink.com/custom-path/very/very/long/url
を参照してください
https://nexthink.com/custom-path/very/ve...
を参照してください
ソフトナビゲーションを有効にすると、ブラウザが新しいページをロードしない非同期ページロードの速度を測定できるようになる。 これらはシングルページアプリケーション(SPA)で非常に一般的です。 ソフトナビゲーションは、ページが安定するのにかかる時間を測定します。 速度ドキュメントを参照してください。
一部のWebアプリケーションは、バックグラウンドプロセスのためにページが完全に安定することがない方法で動作します。 そのような場合、ソフトナビゲーション測定は通常よりも長いページロード時間を報告することがあります。 これが、デフォルトでソフトナビゲーションが無効化されている理由です。 アプリケーションページが安定していることを確認した場合にのみ、この機能をオンにしてください。
Nexthink Applicationsにより、既存のCampaignsと接続することが可能になります。
接続を行うには、Campaignsから一意識別子(UID)を選んで、それをアプリケーション設定画面のEngage campaign UIDテキストフィールドに貼り付けます。 Engageキャンペーンライセンスが必要であることに注意してください。 メインメニューからCampaignsを選び、接続したいキャンペーンをリストから選択することでUID値にもアクセスできます。 キャンペーンのUIDはURLの一部として見つけることができます。 キャンペーンがリンクされると、アプリケーションページのSentimentタブが表示されます。 それにアクセスするには、適切な権限が必要であることに注意してください。 Sentimentタブをクリックすると、関連するCampaigns ダッシュボードが新しいタブで開きます。
関連タスク