概要

多くの SharePoint Framework ソリューションは、テナント管理者が SharePoint 管理センターの API アクセス (API access) ページで承認しなければならない Microsoft Graph アクセス許可を宣言します。Discussions はそうではありません。このパッケージは API アクセス許可要求を一切宣言せず、Microsoft Entra ID にアプリケーションを登録せず、ユーザーにも管理者にも同意のプロンプトを表示しません。Web パーツが行うこと、つまりボード、トピック、返信、サブスクリプション、添付ファイル、画像の読み書きや、@メンションのためのユーザー検索はすべて、ボードが置かれたサイトの SharePoint REST API を通じて、サインインしているユーザーとして行われます。

この記事では、セキュリティ レビューのためにこの事実を明記し、インストール時に管理者に何が表示され、何が表示されないかを説明し、テナントの外に出るわずかな情報を列挙します。

レビュー担当者向けの概要

質問回答
パッケージが要求する Microsoft Graph アクセス許可は?なし
その他の API アクセス許可 (Azure DevOps、カスタム API) は?なし
展開後に API アクセス ページに表示される項目は?なし。承認または却下するものはありません
独自の Microsoft Entra アプリ登録やサービス プリンシパルは?なし
管理者またはユーザーの同意プロンプトは?なし
データ アクセスに使われる ID は?すべての要求で、サインインしているユーザー
呼び出される API は?現在のサイトの SharePoint REST API のみ
アプリケーション (app-only) のアクセス許可、サービス アカウント、保存された資格情報は?なし
Vitextra やサードパーティに送信されるコンテンツは?なし。技術的な識別子を伴うライセンス確認と使用状況テレメトリのみ
サイトでカスタム スクリプトは必要ですか?いいえ

ソリューションが呼び出すもの

Web パーツは SharePoint Framework の HTTP クライアントを使用し、すべての要求を現在のユーザーの ID で送信します。SharePoint は、サイト コンテンツ (Site contents) のリスト ビューに対するのとまったく同じように、各呼び出しにユーザーのアクセス許可を適用します。使用されるエンドポイントは次のとおりです。

  • 現在のサイトのリストとリスト アイテム — マーカー列によって Discussions のリストを見つけ、初回使用時にリストを作成し (この 1 つの操作にだけリストの管理が必要です)、ボード、トピック、返信、サブスクリプション、いいね、報告、承認状態を読み書きします。
  • リスト アイテムの添付ファイル — トピックと返信に添付されたファイル。
  • ドキュメント ライブラリ Discussions Assets のファイルとフォルダー — リッチ テキスト エディターのインライン画像。
  • SharePoint のユーザー選択サービス — @ を入力した後に表示される候補と、選択したユーザーのサイト ユーザーへの解決。これは SharePoint 標準のユーザー選択コントロールが使うのと同じサービスで、Microsoft Graph は呼び出しません。
  • サイトのユーザー情報リスト — 作成者名と現在のユーザーの ID。

Microsoft Graph、Exchange、Teams、その他の Microsoft 365 サービスへの要求は一切なく、Web パーツがメールを送信することもありません。リストと列の完全な一覧は KB10411. Discussions がデータを保存する場所: リスト、列、プライバシーにあります。

📝 注
ユーザー自身のアクセス許可が適用されるため、Web パーツは SharePoint がリストで表示する以上のものを誰にも表示できません。閲覧者には承認済みのトピックが、モデレーターには承認待ちのトピックが、ゲストにはサイトのアクセス許可で許される範囲が表示されます。役割モデルは KB10408. Discussions のアクセス許可: 閲覧、投稿、モデレートできるのは誰かで説明しています。

インストール時に管理者に表示される内容

1. パッケージ vitextra.discussions.sppkg をテナントのアプリ カタログ (またはサイト コレクションのアプリ カタログ) にアップロードし、アプリの有効化 (Enable app) で有効にします。ダイアログにはスクリプトの読み込み元ドメインが示され、すべてのサイトに追加 (Add to all sites) が提案されます。パッケージがアクセス許可を宣言していないため、アクセス許可のセクションは表示されません。

アプリ カタログでの Vitextra Discussions パッケージの有効化

アプリ カタログでの Vitextra Discussions パッケージの有効化

2. API アクセス ページ (SharePoint 管理センター → 詳細 → API アクセス) は変わりません。保留中の要求 (Pending requests) に Vitextra Discussions からの要求は表示されず、承認するものは何もありません。組織で承認済み API アクセス許可の記録を管理している場合、Discussions の項目は単に「要求なし」です。

3. Web パーツは他の Web パーツと同じようにページに追加され、リストの管理を持つ最初のユーザーがボードを作成します。ユーザーに同意ダイアログが表示されることはありません。

インストールと更新の手順は、他のすべての Vitextra 製品と同じです。KB10035. SharePoint Online に Vitextra 製品をインストールする方法、KB10050. SharePoint Online で Vitextra SPFx ソリューションを更新する方法、KB10361. テナントのアプリ カタログとサイト コレクションのアプリ カタログ: Vitextra アプリの展開先を参照してください。アクセス許可を要求するパッケージの一般的な手順は KB10360. SharePoint 管理センターで Vitextra ソリューションの Microsoft Graph API アクセス許可を承認する方法にありますが、Discussions ではその記事は不要です。

❗ 重要
更新後に Vitextra Discussions からの要求が API アクセス ページに表示されることがあれば、それは新しいバージョンが宣言したものであり、そのバージョンのリリース ノートに記載されます。バージョン 26.10.2 は何も宣言していません。

Microsoft Teams アプリ

アプリ カタログがタブと個人用アプリ向けに生成する Teams アプリ パッケージも、Microsoft Graph のスコープを宣言しません。そのマニフェストが参照するのは、SPFx タブがユーザーをチーム サイトにサインインさせる標準の仕組みである SharePoint Online 自体と、通常の SharePoint および Microsoft 365 のサインイン ドメインだけです。そのため、Teams 管理センターでこのアプリに付与すべき API アクセス許可は表示されません。アプリを Teams に追加する方法は KB10393. Discussions を Microsoft Teams に追加する方法で説明しています。

テナントの外に出るもの

目的送信される内容送信先
製品ファイルWeb パーツのスクリプトとアイコンに対する通常のブラウザー要求static.vitextra.com
ライセンス確認テナント ID、ユーザーのオブジェクト ID、サイトのアドレス、製品の識別子、名前、バージョンvitextra.com
使用状況テレメトリWeb パーツの読み込み時のイベント (製品とバージョン、サイト ID とアドレス、ユーザーのオブジェクト ID、インターフェイスの言語、Teams で実行されているかどうか) とエラーの技術的な詳細Azure Application Insights

トピック、返信、添付ファイル、画像、サブスクリプション、ユーザー一覧が Vitextra やサードパーティに送信されることはありません。データ所在地と GDPR を含む Vitextra 製品全体の概要は KB10363. Vitextra 製品がデータを保存する場所: プライバシー、データ所在地、GDPRにあります。

メール送信アクセス許可の所在

Discussions は意図的にメールを送信しないため、Mail.Send も、メールボックスの代わりに送信するためのアプリケーション アクセス許可も必要ありません。Web パーツは Discussions Subscriptions リストと Mentions 列を管理し、配信はサイト所有者が自分の環境に設定する Power Automate フローの役割です。このフローは、作成した人の接続、つまりリストを読み取るための SharePoint 接続と、送信のための Office 365 Outlook (または共有メールボックス) 接続を使用し、これらの接続への同意は、組織がフローに既に適用しているガバナンスのもとで Power Automate 内で行われます。リストとフローの間のコントラクトは KB10414. Discussions の通知のしくみ: サブスクリプション、メンション、Power Automateで説明しています。

💡 ヒント
セキュリティ質問票には次のように記載できます。「このソリューションは、API アクセス許可要求を宣言せず、独自の Entra ID アプリケーションを持たず、サインインしているユーザーの委任された ID でホスト サイトの SharePoint REST API だけを呼び出し、すべてのコンテンツをそのサイトのリストに保存し、ベンダーにはライセンスとテレメトリの識別子だけを送信する SharePoint Framework パッケージです。」どの記述も、アプリ カタログ、API アクセス ページ、ブラウザーのネットワーク トレースで検証できます。

注目の記事

QR コードのダウンロードとコピー: PNG、JPEG、SVG、WebP

Vitextra QR Code Generator Web パーツから QR コードを取り出す方法を説明します。PNG、JPEG、SVG、WebP 形式でのダウンロード、300 ~ 4000 ピクセルの画像サイズの設定、クリップボードへのコピー、印刷・ドキュメント・Web に適した形式の選び方を取り上げます。

68 1 分
My Tasks のデータ ソース: Planner、To Do、Outlook、SharePoint、Project Online、Azure DevOps

Vitextra My Tasks で使用できるすべてのデータ ソースのリファレンスです。Planner、Microsoft To Do、Outlook のフラグ付きメール、SharePoint タスク リスト、Project Online、Azure DevOps から読み込まれるタスク、各ソースの要件、フィールドの対応関係、制限事項を説明します。

68 2 分
Single Source と Multiple Sources (タブ): Smart Search の検索モードの選び方

Vitextra Smart Search Web パーツの Single Source モードと Multiple Sources (Tabs) モードの違い、10 種類の組み込み検索ソースがそれぞれ検索する内容、SharePoint Online で検索タブの名前を変更、非表示、並べ替えする方法について説明します。

69 2 分

共有