SharePoint Online での Office 365 コンテンツ配信ネットワーク (CDN) の使用
組み込みの Office 365 コンテンツ配信ネットワーク (CDN) を使用して静的資産をホストすることで、SharePoint Online ページのパフォーマンスを向上させることができます。 Office 365 CDN では、静的資産を要求しているブラウザーの近くに静的資産をキャッシュするとパフォーマンスが向上します。これにより、ダウンロードが速くなり、待ち時間が短縮されます。 また、Office 365 CDN では、HTTP/2 プロトコルを使用して、圧縮と HTTP パイプラインを改善します。 Office 365 CDN サービスは、SharePoint Online サブスクリプションの一部として含まれます。
注意
SharePoint Online サービスで管理されるプライベート CDN でイメージが自動的に管理されるようになったので、手動で構成されたプライベート CDN は非推奨の処理中です。 この動作は、お客様がプライベート CDN を構成する必要がなくなったことを意味します。 サービスで管理されるプライベート CDN を介してイメージが自動的にホストされるため、推奨される方法は変更されません。 パブリック CDN は、他のすべてのファイルの種類 (CSS や JS など) で引き続き使用できます。 イメージ以外のファイルの種類にプライベート CDN を使用しているお客様は、これらのファイルをパブリック CDN に移動する必要があります。 パフォーマンスを向上させるために、これらのファイルの種類にはパブリック CDN をお勧めします。
注:
Office 365 CDN は、本番 (ワールドワイド) クラウドのテナントのみが利用できます。 米国政府と中国のクラウドのテナントは、現在、Office 365 CDN をサポートしていません。
Office 365 CDN は静的資産を複数の場所 (元の場所) でホストできる複数の CDN で構成されているため、静的資産をグローバルな高速ネットワークから提供することができます。 Office 365 CDN でホストするコンテンツの種類に応じて、公開、非公開、またはその両方の元の場所を追加できます。 パブリック配信元とプライベート配信元の違いの詳細については、「 各配信元をパブリックまたはプライベートにするかどうかを選択 する」を参照してください。
CDN の動作方法に既に慣れている場合は、テナントに対してOffice 365 CDN を有効にするためにいくつかの手順を完了するだけで済みます。 この記事では、その方法について説明します。 静的資産のホストを開始する方法については、こちらをご覧ください。
ヒント
特殊な使用シナリオにOffice 365で使用できる他の Microsoft ホスト CDN がありますが、Office 365 CDN の範囲外であるため、このトピックでは説明しません。 詳細については、「 その他の Microsoft CDN」を参照してください。
Office 365のネットワーク計画とパフォーマンスチューニングに戻ります。
SharePoint Online でのOffice 365 CDN の操作の概要
organizationのOffice 365 CDN を設定するには、次の基本的な手順に従います。
-
- CDN でホストする静的資産を決定します。
- 資産を格納する場所を決定します。 この場所は SharePoint サイト、ライブラリ、またはフォルダーであり、 配信元と呼ばれます。
- 各配信元をパブリックにするかプライベートにするかを選択します。 パブリック型とプライベート型の両方の複数の配信元を追加できます。
PowerShell または Microsoft 365 の CLI を使用して CDN を設定して構成する
- SharePoint Online 管理シェルを使用して CDN を設定して構成する
- PnP PowerShell を使用して CDN を設定して構成する
- Microsoft 365 の CLI を使用して CDN を設定して構成する
この手順を完了すると、次の結果が得られます。
- CDN は、organizationに対して有効になっています。
- 配信元を追加し、各配信元をパブリックまたはプライベートとして識別しました。
セットアップが完了したら、次の方法でOffice 365 CDN を管理できます。
- 資産の追加、更新、削除
- 配信元の追加と削除
- CDN ポリシーの構成
- 必要に応じて、CDN を無効にする
最後に、「 CDN 資産の使用 」を参照して、パブリックとプライベートの両方の配信元から CDN 資産にアクセスする方法について説明します。
一般的な問題の解決に関するガイダンスについては、「Office 365 CDN のトラブルシューティング」を参照してください。
Office 365 CDN のデプロイを計画する
Office 365 テナントにOffice 365 CDN をデプロイする前に、計画プロセスの一環として次の要素を考慮する必要があります。
CDN でホストする静的資産を決定する
一般に、CDN は 静的資産や頻繁に変更されない資産をホストする場合に最も効果的です。 経験則として、次の条件の一部またはすべてを満たすファイルを特定することをお勧めします。
- ページに埋め込まれた静的ファイル (スクリプトや画像など) は、ページの読み込み時間に大きな影響を与える可能性があります。
- 実行可能ファイルやインストール ファイルなどの大きなファイル。
- クライアント側コードをサポートするリソース ライブラリ。
たとえば、要求が繰り返される小さなファイル (サイト イメージとスクリプト) を CDN 配信元に追加すると、サイトレンダリングのパフォーマンスが大幅に向上し、SharePoint Online サイトの負荷が段階的に軽減されます。 より大きなファイル (インストール実行可能ファイル) は CDN からダウンロードでき、パフォーマンスが向上し、その後、SharePoint Online サイトへの負荷が低下します(アクセス頻度が低い場合でも)。
ファイル単位でのパフォーマンスの向上は、クライアントが最も近い CDN エンドポイントに近接していること、ローカル ネットワーク上の一時的な状態など、多くの要因によって異なります。 多くの静的ファイルは小さく、Office 365から 1 秒未満でダウンロードできます。 ただし、Web ページには、累積ダウンロード時間が数秒の埋め込みファイルが多数含まれている場合があります。 CDN からこれらのファイルを提供すると、ページ全体の読み込み時間が大幅に短縮されます。 例については、「 CDN で提供されるパフォーマンスの向上 」を参照してください。
資産を保存する場所を決定する
CDN では、配信元と呼ばれる場所からアセットをフェッチします。 配信元には、URL でアクセスできる SharePoint サイト、ドキュメント ライブラリ、またはフォルダーを指定できます。 organizationの配信元を指定する場合は、優れた柔軟性があります。 たとえば、複数の配信元、またはすべての CDN 資産を配置する 1 つの配信元を指定できます。 組織の元の場所としてパブリックとプライベートの両方を指定することができます。 ほとんどの組織は、この 2 つを組み合わせて実装することを選択します。
フォルダーやドキュメント ライブラリなどの配信元の新しいコンテナーを作成し、CDN から使用できるようにするファイルを追加できます。 これは、CDN から使用する特定の資産のセットに適した方法であり、CDN 資産のセットをコンテナー内のファイルのみに制限する必要があります。
既存のサイト コレクション、サイト、ライブラリ、またはフォルダーを配信元として構成することもできます。これにより、コンテナー内のすべての適格な資産を CDN から使用できるようになります。 既存のコンテナーを配信元として追加する前に、匿名アクセスや未承認のユーザーに資産を誤って公開しないように、その内容とアクセス許可を認識しておく必要があります。
CDN ポリシーを定義して、配信元のコンテンツを CDN から除外できます。 CDN ポリシーは、 ファイルの種類 や サイト分類などの属性によってパブリックまたはプライベートの配信元の資産を除外し、ポリシーで指定した CdnType (プライベートまたはパブリック) のすべての配信元に適用されます。 たとえば、複数のサブサイトを含むサイトで構成されるプライベート配信元を追加する場合、 機密 としてマークされたサイトを除外するポリシーを定義して、その分類が適用されたサイトのコンテンツが CDN から提供されないようにすることができます。 このポリシーは、CDN に追加 したすべての プライベート配信元のコンテンツに適用されます。
配信元の数が多いほど、CDN サービスが要求を処理するのにかかる時間に対する影響が大きくなることに注意してください。 配信元の数はできるだけ制限することをお勧めします。
各配信元をパブリックにするかプライベートにするかを選択する
配信元を特定する場合は、 公開 するか 非公開にするかを指定します。 パブリック配信元の CDN 資産へのアクセスは匿名であり、プライベート配信元の CDN コンテンツは、セキュリティを強化するために動的に生成されたトークンによって保護されます。 選択したオプションに関係なく、CDN 自体の管理に関しては、Microsoft によってすべての負荷が高まります。 また、CDN を設定して配信元を特定した後で、考えを変えることもできます。
パブリックとプライベートの両方のオプションで、同様のパフォーマンスの向上を得られますが、それぞれに固有の属性と利点があります。
Office 365 CDN 内のパブリック配信元には匿名でアクセスでき、ホストされている資産には、その資産への URL を持つすべてのユーザーがアクセスできます。 パブリック配信元のコンテンツへのアクセスは匿名であるため、JavaScript ファイル、スクリプト、アイコン、画像などの非センシティブな汎用コンテンツをキャッシュする場合にのみ使用する必要があります。
Office 365 CDN 内の非公開の元の場所は、SharePoint Online ドキュメント ライブラリ、サイト、独自のイメージなど、ユーザー コンテンツへのプライベート アクセスを行う場合に使用します。 プライベート配信元のコンテンツへのアクセスは、動的に生成されたトークンによって保護されるため、元のドキュメント ライブラリまたはストレージの場所へのアクセス許可を持つユーザーのみがアクセスできます。 Office 365 CDN のプライベート配信元は SharePoint Online コンテンツにのみ使用でき、プライベート配信元のアセットには SharePoint Online テナントからのリダイレクトによってのみアクセスできます。
プライベート配信元のアセットへの CDN アクセスのしくみの詳細については、「プライベート配信元 でのアセットの使用」を参照してください。
パブリック配信元で資産をホストする属性と利点
パブリックの配信元で公開されている資産には、すべてのユーザーが匿名でアクセスできます。
重要
ユーザー情報を含むリソースや、organizationに対して機密性が高いと見なされるリソースをパブリック配信元に配置しないでください。
パブリック配信元から資産を削除した場合、資産はキャッシュから最大 30 日間引き続き使用できる可能性があります。ただし、CDN 内の資産へのリンクは 15 分以内に無効になります。
パブリックの配信元にスタイル シート (CSS ファイル) をホストする場合は、コード内で相対パスと URI を使用できます。 この結果は、背景画像やその他のオブジェクトの場所を、それを呼び出すアセットの場所を基準にして参照できることを意味します。
パブリック配信元の URL を作成できますが、慎重に進み、ページ コンテキスト プロパティを使用し、そのガイダンスに従ってください。 CDN へのアクセスが利用できなくなった場合、URL は SharePoint Online のorganizationに自動的に解決されないため、リンクやその他のエラーが発生する可能性があります。 URL も変更される可能性があるため、現在の値にハード コーディングしないでください。
パブリック 配信元に含まれる既定のファイルの種類は
.css
、、.eot
、、、.gif
.ico
、.jpg
.map
.js
.jpeg
.svg
.ttf
.png
.woff
および.woff2
です。 追加のファイルの種類を指定できます。指定したサイト分類に基づいて資産を除外するようにポリシーを構成できます。 たとえば、許可されたファイルの種類であり、パブリック配信元にある場合でも、"機密" または "制限" としてマークされているすべての資産を除外できます。
プライベート配信元で資産をホストする属性と利点
プライベート配信元は、SharePoint Online アセットにのみ使用できます。
ユーザーは、コンテナーにアクセスするためのアクセス許可を持っている場合にのみ、プライベート配信元から資産にアクセスできます。 これらの資産に匿名でアクセスすることはできません。
プライベート配信元の資産は、SharePoint Online テナントから参照する必要があります。 プライベート CDN 資産への直接アクセスは機能しません。
プライベート配信元から資産を削除した場合、資産はキャッシュから最大 1 時間使用できる状態が続く可能性があります。 ただし、CDN 内の資産へのリンクは、資産の削除から 15 分以内に無効です。
プライベートの配信元用に含まれている既定のファイルの種類は、.gif、.ico、.jpeg、.jpg、.js、.png です。 追加のファイルの種類を指定できます。
パブリック配信元と同様に、ワイルドカードを使用してフォルダーまたはドキュメント ライブラリ内のすべての資産を含める場合でも、指定したサイト分類によって識別される資産を除外するようにポリシーを構成できます。
Office 365 テナントで使用できるOffice 365 CDN、一般的な CDN の概念、およびその他の Microsoft CDN を使用する理由の詳細については、「コンテンツ配信ネットワーク」を参照してください。
既定の CDN 配信元
特に指定しない限り、Office 365 CDN を有効にするときに、既定の配信元を設定Office 365。 最初にプロビジョニングしない場合は、セットアップを完了した後にこれらの配信元を追加できます。 既定の配信元の設定をスキップした結果を理解し、特定の理由がある場合を除き、CDN を有効にするときに作成を許可する必要があります。
既定のプライベート CDN 配信元:
- */siteassets
既定のパブリック CDN 配信元:
- */Masterpage
- */style library
- */clientsideassets
注:
clientsideassets は、2017 年 12 月にOffice 365 CDN サービスに追加された既定のパブリック配信元です。 CDN 内のSharePoint Framework ソリューションを機能させるには、この配信元が存在する必要があります。 2017 年 12 月より前に Office 365 CDN を有効にした場合、または CDN を有効にしたときに既定の配信元の設定をスキップした場合は、この配信元を手動で追加できます。 詳細については、「クライアント側 Web パーツまたは SharePoint Framework ソリューションが機能しない」を参照してください。
SharePoint Online 管理シェルを使用して、Office 365 CDN を設定して構成する
このセクションの手順では、SharePoint Online 管理シェルを使用して SharePoint Online に接続する必要があります。 手順については、「Connect to SharePoint Online PowerShell」を参照してください。
SharePoint Online 管理シェルを使用して SharePoint Online で資産をホストするように CDN を設定して構成するには、次の手順を実行します。
を選択して展開する
Office 365 CDN を使用するようにorganizationを有効にする
テナント CDN 設定を変更する前に、Office 365 テナントのプライベート CDN 構成の現在の状態を取得する必要があります。 SharePoint Online 管理シェルを使用してテナントに接続します。
Connect-SPOService -Url https://contoso-admin.sharepoint.com
次に、 Get-SPOTenantCdnEnabled コマンドレットを使用して、テナントから CDN 状態設定を取得します。
Get-SPOTenantCdnEnabled -CdnType <Public | Private>
指定した CdnType の CDN の状態が画面に表示されます。
Set-SPOTenantCdnEnabled コマンドレットを使用して、organizationで Office 365 CDN を使用できるようにします。 パブリック 配信元、プライベート 配信元、またはその両方を一度に使用するようにorganizationを有効にできます。 また、既定の配信元の設定をスキップするように CDN を構成することもできます。 この記事の説明に従って、後でこれらの配信元をいつでも追加できます。
SharePoint Online のWindows PowerShell:
Set-SPOTenantCdnEnabled -CdnType <Public | Private | Both> -Enable $true
たとえば、organizationでパブリックとプライベートの両方の配信元を使用できるようにするには、次のコマンドを入力します。
Set-SPOTenantCdnEnabled -CdnType Both -Enable $true
organizationでパブリック配信元とプライベート 配信元の両方を使用できるようにするが、既定の配信元の設定をスキップするには、次のコマンドを入力します。
Set-SPOTenantCdnEnabled -CdnType Both -Enable $true -NoDefaultOrigins
Office 365 CDN を有効にしたときに既定でプロビジョニングされる配信元と、既定の配信元の設定をスキップする潜在的な影響については、「既定の CDN 配信元」を参照してください。
organizationでパブリック 配信元を使用できるようにするには、次のコマンドを入力します。
Set-SPOTenantCdnEnabled -CdnType Public -Enable $true
organizationでプライベート 配信元を使用できるようにするには、次のコマンドを入力します。
Set-SPOTenantCdnEnabled -CdnType Private -Enable $true
このコマンドレットの詳細については、「 Set-SPOTenantCdnEnabled」を参照してください。
Office 365 CDN に含めるファイルの種類の一覧を変更する (省略可能)
ヒント
Set-SPOTenantCdnPolicy コマンドレットを使用してファイルの種類を定義すると、現在定義されているリストが上書きされます。 リストに追加のファイルの種類を追加する場合は、最初に コマンドレットを使用して、既に許可されているファイルの種類を調べ、新しいファイルと共にリストに含めます。
Set-SPOTenantCdnPolicy コマンドレットを使用して、CDN のパブリック配信元とプライベート配信元でホストできる静的ファイルの種類を定義します。 既定では、一般的な資産の種類 (.css、.gif、.jpg、.js など) が許可されます。
SharePoint Online のWindows PowerShell:
Set-SPOTenantCdnPolicy -CdnType <Public | Private> -PolicyType IncludeFileExtensions -PolicyValue "<Comma-separated list of file types >"
たとえば、CDN で.cssファイルと .png ファイルをホストできるようにするには、次のコマンドを入力します。
Set-SPOTenantCdnPolicy -CdnType Private -PolicyType IncludeFileExtensions -PolicyValue "CSS,PNG"
CDN で現在許可されているファイルの種類を確認するには、 Get-SPOTenantCdnPolicies コマンドレットを 使用します。
Get-SPOTenantCdnPolicies -CdnType <Public | Private>
これらのコマンドレットの詳細については、「 Set-SPOTenantCdnPolicy 」および 「Get-SPOTenantCdnPolicies」を参照してください。
Office 365 CDN から除外するサイト分類の一覧を変更する (省略可能)
ヒント
Set-SPOTenantCdnPolicy コマンドレットを使用してサイト分類を除外すると、現在定義されているリストが上書きされます。 追加のサイト分類を除外する場合は、最初にコマンドレットを使用して、既に除外されている分類を調べ、新しい分類と共に追加します。
Set-SPOTenantCdnPolicy コマンドレットを使用して、CDN で使用したくないサイト分類を除外します。 既定で除外されるサイトの分類はありません。
SharePoint Online のWindows PowerShell:
Set-SPOTenantCdnPolicy -CdnType <Public | Private> -PolicyType ExcludeRestrictedSiteClassifications -PolicyValue "<Comma-separated list of site classifications >"
現在制限されているサイト分類を確認するには、 Get-SPOTenantCdnPolicies コマンドレットを 使用します。
Get-SPOTenantCdnPolicies -CdnType <Public | Private>
返されるプロパティは 、IncludeFileExtensions、 ExcludeRestrictedSiteClassifications 、 ExcludeIfNoScriptDisabled です。
IncludeFileExtensions プロパティには、CDN から提供されるファイル拡張子の一覧が含まれています。
注:
既定のファイル拡張子は、パブリックとプライベートの間で異なります。
ExcludeRestrictedSiteClassifications プロパティには、CDN から除外するサイト分類が含まれています。 たとえば、 機密 としてマークされたサイトを除外して、その分類が適用されたサイトのコンテンツが CDN から提供されないようにすることができます。
ExcludeIfNoScriptDisabled プロパティは、サイト レベルの NoScript 属性設定に基づいて CDN からコンテンツを除外します。 既定では、NoScript 属性は [モダン サイトの場合は有効] と [クラシック サイトの場合は無効] に設定されています。 これは、テナント設定によって異なります。
これらのコマンドレットの詳細については、「 Set-SPOTenantCdnPolicy 」および 「Get-SPOTenantCdnPolicies」を参照してください。
アセットの配信元を追加する
Add-SPOTenantCdnOrigin コマンドレットを使用して、配信元を定義します。 複数の配信元を定義できます。 配信元は、CDN でホストする資産が含まれる SharePoint ライブラリまたはフォルダーを指す URL です。
重要
ユーザー情報を含むリソースや、organizationに対して機密性が高いと見なされるリソースをパブリック配信元に配置しないでください。
Add-SPOTenantCdnOrigin -CdnType <Public | Private> -OriginUrl <path>
path の値は、アセットを含むライブラリまたはフォルダーへの相対パスです。 相対パスに加え、ワイルドカードも使用できます。 配信元では、URL の前にワイルドカードがサポートされます。 これにより、複数のサイトにまたがる配信元を作成できます。 たとえば、すべてのサイトの masterpages フォルダー内のすべての資産を CDN 内のパブリック配信元として含める場合は、次のコマンドを入力します。
Add-SPOTenantCdnOrigin -CdnType Public -OriginUrl */masterpage
- ワイルドカード修飾子 */ は、パスの先頭でのみ使用でき、指定した URL のすべての URL セグメントと一致します。
- パスは、ドキュメント ライブラリ、フォルダー、またはサイトを指すことができます。 たとえば、パス */site1 は、サイト の下にあるすべてのドキュメント ライブラリと一致します。
特定の相対パスを持つ配信元を追加できます。 完全パスを使用して配信元を追加することはできません。
次の使用例は、特定のサイトの siteassets ライブラリのプライベート配信元を追加します。
Add-SPOTenantCdnOrigin -CdnType Private -OriginUrl sites/site1/siteassets
次の使用例は、サイト コレクションのサイト資産ライブラリ内の folder1 フォルダーのプライベート配信元を追加します。
Add-SPOTenantCdnOrigin -CdnType Private -OriginUrl sites/test/siteassets/folder1
パスにスペースがある場合は、パスを二重引用符で囲むか、スペースを URL エンコード %20 に置き換えることができます。 次の例では、サイト コレクションのサイト資産ライブラリ内の フォルダー 1 フォルダーのプライベート配信元を追加します。
Add-SPOTenantCdnOrigin -CdnType Private -OriginUrl sites/test/siteassets/folder%201
Add-SPOTenantCdnOrigin -CdnType Private -OriginUrl "sites/test/siteassets/folder 1"
このコマンドとその構文の詳細については、「 Add-SPOTenantCdnOrigin」を参照してください。
注:
プライベート配信元では、配信元から共有される資産には、CDN からアクセスする前にメジャー バージョンが発行されている必要があります。
コマンドを実行すると、システムはデータセンター全体で構成を同期します。 この結果には最大 15 分かかることがあります。
例: SharePoint Online のマスター ページとスタイル ライブラリのパブリック配信元を構成する
通常、これらの配信元は、Office 365 CDN を有効にすると既定で設定されます。 ただし、手動で有効にする場合は、次の手順に従います。
スタイル ライブラリをパブリック配信元として定義するには、 Add-SPOTenantCdnOrigin コマンドレットを使用します。
Add-SPOTenantCdnOrigin -CdnType Public -OriginUrl */style%20library
Add-SPOTenantCdnOrigin コマンドレットを使用して、マスター ページをパブリック配信元として定義します。
Add-SPOTenantCdnOrigin -CdnType Public -OriginUrl */masterpage
このコマンドとその構文の詳細については、「 Add-SPOTenantCdnOrigin」を参照してください。
コマンドを実行すると、システムはデータセンター全体で構成を同期します。 この結果には最大 15 分かかることがあります。
例: SharePoint Online のサイト資産、サイト ページ、および発行イメージのプライベート配信元を構成する
Add-SPOTenantCdnOrigin コマンドレットを使用して、サイト資産フォルダーをプライベート配信元として定義します。
Add-SPOTenantCdnOrigin -CdnType Private -OriginUrl */siteassets
Add-SPOTenantCdnOrigin コマンドレットを使用して、サイト ページ フォルダーをプライベート配信元として定義します。
Add-SPOTenantCdnOrigin -CdnType Private -OriginUrl */sitepages
Add-SPOTenantCdnOrigin コマンドレットを使用して、発行するイメージ フォルダーをプライベート配信元として定義します。
Add-SPOTenantCdnOrigin -CdnType Private -OriginUrl */publishingimages
このコマンドとその構文の詳細については、「 Add-SPOTenantCdnOrigin」を参照してください。
コマンドを実行すると、システムはデータセンター全体で構成を同期します。 この結果には最大 15 分かかることがあります。
例: SharePoint Online のサイト コレクションのプライベート配信元を構成する
サイト コレクションをプライベート配信元として定義するには、 Add-SPOTenantCdnOrigin コマンドレットを使用します。 次に例を示します。
Add-SPOTenantCdnOrigin -CdnType Private -OriginUrl sites/site1/siteassets
このコマンドとその構文の詳細については、「 Add-SPOTenantCdnOrigin」を参照してください。
コマンドを実行すると、システムはデータセンター全体で構成を同期します。 [構成の保留中] メッセージが表示される場合があります。 このメッセージは、SharePoint Online テナントが CDN サービスに接続すると想定されます。 この結果には最大 15 分かかることがあります。
Office 365 CDN を管理する
CDN を設定したら、このセクションで説明するように、コンテンツを更新したり、ニーズの変更に応じて構成を変更したりできます。
Office 365 CDN から資産を追加、更新、または削除する
セットアップ手順を完了したら、新しい資産を追加し、必要に応じて既存の資産を更新または削除できます。 配信元として識別したフォルダーまたは SharePoint ライブラリ内の資産に変更を加えるだけです。 新しい資産を追加すると、すぐに CDN 経由で使用できます。 ただし、資産を更新すると、新しいコピーが反映されて CDN で使用できるようになるまで最大 15 分かかります。
配信元の場所を取得する必要がある場合は、 Get-SPOTenantCdnOrigins コマンドレットを 使用できます。 このコマンドレットの使用方法については、「 Get-SPOTenantCdnOrigins」を参照してください。
Office 365 CDN から配信元を削除する
Remove-SPOTenantCdnOrigin コマンドレットを使用して、配信元として識別したフォルダーまたは SharePoint ライブラリへのアクセスを削除できます。
Remove-SPOTenantCdnOrigin -OriginUrl <path> -CdnType <Public | Private | Both>
このコマンドレットの使用方法については、「 Remove-SPOTenantCdnOrigin」を参照してください。
Office 365 CDN の配信元を変更する
作成後に配信元を変更することはできません。 代わりに、配信元を削除し、新しい配信元を追加します。 詳細については、「Office 365 CDN から配信元を削除するには」と「アセットの配信元を追加するには」を参照してください。
Office 365 CDN を無効にする
Set-SPOTenantCdnEnabled コマンドレットを使用して、organizationの CDN を無効にします。 CDN に対してパブリック配信元とプライベート配信元の両方を有効にしている場合は、次の例に示すようにコマンドレットを 2 回実行する必要があります。
CDN でパブリック 配信元の使用を無効にするには、次のコマンドを入力します。
Set-SPOTenantCdnEnabled -CdnType Public -Enable $false
CDN でのプライベート 配信元の使用を無効にするには、次のコマンドを入力します。
Set-SPOTenantCdnEnabled -CdnType Private -Enable $false
このコマンドレットの詳細については、「 Set-SPOTenantCdnEnabled」を参照してください。
PnP PowerShell を使用してOffice 365 CDN を設定して構成する
このセクションの手順では、PnP PowerShell を使用して SharePoint Online に接続する必要があります。 手順については、「 PnP PowerShell の概要」を参照してください。
PnP PowerShell を使用して SharePoint Online で資産をホストするように CDN を設定および構成するには、次の手順を実行します。
を選択して展開する
Office 365 CDN を使用するようにorganizationを有効にする
テナント CDN 設定を変更する前に、Office 365 テナントのプライベート CDN 構成の現在の状態を取得する必要があります。 PnP PowerShell を使用してテナントに接続します。
Connect-PnPOnline -Url https://contoso-admin.sharepoint.com -UseWebLogin
次に、 Get-PnPTenantCdnEnabled コマンドレットを使用して、テナントから CDN 状態設定を取得します。
Get-PnPTenantCdnEnabled -CdnType <Public | Private>
指定した CdnType の CDN の状態が画面に表示されます。
Set-PnPTenantCdnEnabled コマンドレットを使用して、organizationで Office 365 CDN を使用できるようにします。 パブリック 配信元、プライベート 配信元、またはその両方を同時に使用するようにorganizationを有効にできます。 また、既定の配信元の設定をスキップするように CDN を構成することもできます。 この記事の説明に従って、後でこれらの配信元をいつでも追加できます。
PnP PowerShell の場合:
Set-PnPTenantCdnEnabled -CdnType <Public | Private | Both> -Enable $true
たとえば、organizationでパブリックとプライベートの両方の配信元を使用できるようにするには、次のコマンドを入力します。
Set-PnPTenantCdnEnabled -CdnType Both -Enable $true
organizationでパブリック配信元とプライベート 配信元の両方を使用できるようにするが、既定の配信元の設定をスキップするには、次のコマンドを入力します。
Set-PnPTenantCdnEnabled -CdnType Both -Enable $true -NoDefaultOrigins
Office 365 CDN を有効にしたときに既定でプロビジョニングされる配信元と、既定の配信元の設定をスキップする潜在的な影響については、「既定の CDN 配信元」を参照してください。
organizationでパブリック 配信元を使用できるようにするには、次のコマンドを入力します。
Set-PnPTenantCdnEnabled -CdnType Public -Enable $true
organizationでプライベート 配信元を使用できるようにするには、次のコマンドを入力します。
Set-PnPTenantCdnEnabled -CdnType Private -Enable $true
このコマンドレットの詳細については、「 Set-PnPTenantCdnEnabled」を参照してください。
Office 365 CDN に含めるファイルの種類の一覧を変更する (省略可能)
ヒント
Set-PnPTenantCdnPolicy コマンドレットを使用してファイルの種類を定義すると、現在定義されているリストが上書きされます。 リストに追加のファイルの種類を追加する場合は、最初に コマンドレットを使用して、既に許可されているファイルの種類を調べ、新しいファイルと共にリストに含めます。
Set-PnPTenantCdnPolicy コマンドレットを使用して、CDN のパブリック配信元とプライベート配信元でホストできる静的ファイルの種類を定義します。 既定では、一般的な資産の種類 (.css、.gif、.jpg、.js など) が許可されます。
PnP PowerShell の場合:
Set-PnPTenantCdnPolicy -CdnType <Public | Private> -PolicyType IncludeFileExtensions -PolicyValue "<Comma-separated list of file types >"
たとえば、CDN で.cssファイルと .png ファイルをホストできるようにするには、次のコマンドを入力します。
Set-PnPTenantCdnPolicy -CdnType Private -PolicyType IncludeFileExtensions -PolicyValue "CSS,PNG"
CDN で現在許可されているファイルの種類を確認するには、 Get-PnPTenantCdnPolicies コマンドレットを使用します。
Get-PnPTenantCdnPolicies -CdnType <Public | Private>
これらのコマンドレットの詳細については、「 Set-PnPTenantCdnPolicy 」および 「Get-PnPTenantCdnPolicies」を参照してください。
Office 365 CDN から除外するサイト分類の一覧を変更する (省略可能)
ヒント
Set-PnPTenantCdnPolicy コマンドレットを使用してサイト分類を除外すると、現在定義されているリストが上書きされます。 追加のサイト分類を除外する場合は、最初にコマンドレットを使用して、既に除外されている分類を調べ、新しい分類と共に追加します。
Set-PnPTenantCdnPolicy コマンドレットを使用して、CDN 経由で利用できるようにする必要のないサイト分類を除外します。 既定で除外されるサイトの分類はありません。
PnP PowerShell の場合:
Set-PnPTenantCdnPolicy -CdnType <Public | Private> -PolicyType ExcludeRestrictedSiteClassifications -PolicyValue "<Comma-separated list of site classifications>"
現在制限されているサイト分類を確認するには、 Get-PnPTenantCdnPolicies コマンドレットを 使用します。
Get-PnPTenantCdnPolicies -CdnType <Public | Private>
返されるプロパティは 、IncludeFileExtensions、 ExcludeRestrictedSiteClassifications 、 ExcludeIfNoScriptDisabled です。
IncludeFileExtensions プロパティには、CDN から提供されるファイル拡張子の一覧が含まれています。
注:
既定のファイル拡張子は、パブリックとプライベートの間で異なります。
ExcludeRestrictedSiteClassifications プロパティには、CDN から除外するサイト分類が含まれています。 たとえば、 機密 としてマークされたサイトを除外して、その分類が適用されたサイトのコンテンツが CDN から提供されないようにすることができます。
ExcludeIfNoScriptDisabled プロパティは、サイト レベルの NoScript 属性設定に基づいて CDN からコンテンツを除外します。 既定では、NoScript 属性は [モダン サイトの場合は有効] と [クラシック サイトの場合は無効] に設定されています。 これは、テナント設定によって異なります。
これらのコマンドレットの詳細については、「 Set-PnPTenantCdnPolicy 」および 「Get-PnPTenantCdnPolicies」を参照してください。
アセットの配信元を追加する
Add-PnPTenantCdnOrigin コマンドレットを使用して、配信元を定義します。 複数の配信元を定義できます。 配信元は、CDN でホストする資産が含まれる SharePoint ライブラリまたはフォルダーを指す URL です。
重要
ユーザー情報を含むリソースや、organizationに対して機密性が高いと見なされるリソースをパブリック配信元に配置しないでください。
Add-PnPTenantCdnOrigin -CdnType <Public | Private> -OriginUrl <path>
path の値は、アセットを含むライブラリまたはフォルダーへの相対パスです。 相対パスに加え、ワイルドカードも使用できます。 配信元では、URL の前にワイルドカードがサポートされます。 これにより、複数のサイトにまたがる配信元を作成できます。 たとえば、すべてのサイトの masterpages フォルダー内のすべての資産を CDN 内のパブリック配信元として含める場合は、次のコマンドを入力します。
Add-PnPTenantCdnOrigin -CdnType Public -OriginUrl */masterpage
- ワイルドカード修飾子 */ は、パスの先頭でのみ使用でき、指定した URL のすべての URL セグメントと一致します。
- パスは、ドキュメント ライブラリ、フォルダー、またはサイトを指すことができます。 たとえば、パス */site1 は、サイト の下にあるすべてのドキュメント ライブラリと一致します。
特定の相対パスを持つ配信元を追加できます。 完全パスを使用して配信元を追加することはできません。
次の使用例は、特定のサイトのサイト資産ライブラリのプライベート配信元を追加します。
Add-PnPTenantCdnOrigin -CdnType Private -OriginUrl sites/site1/siteassets
次の使用例は、サイト コレクションのサイト資産ライブラリ内の folder1 フォルダーのプライベート配信元を追加します。
Add-PnPTenantCdnOrigin -CdnType Private -OriginUrl sites/test/siteassets/folder1
パスにスペースがある場合は、パスを二重引用符で囲むか、スペースを URL エンコード %20 に置き換えることができます。 次の例では、サイト コレクションのサイト資産ライブラリ内の フォルダー 1 フォルダーのプライベート配信元を追加します。
Add-PnPTenantCdnOrigin -CdnType Private -OriginUrl sites/test/siteassets/folder%201
Add-PnPTenantCdnOrigin -CdnType Private -OriginUrl "sites/test/siteassets/folder 1"
このコマンドとその構文の詳細については、「 Add-PnPTenantCdnOrigin」を参照してください。
注:
プライベート配信元では、配信元から共有される資産には、CDN からアクセスする前にメジャー バージョンが発行されている必要があります。
コマンドを実行すると、システムはデータセンター全体で構成を同期します。 この結果には最大 15 分かかることがあります。
例: SharePoint Online のマスター ページとスタイル ライブラリのパブリック配信元を構成する
通常、これらの配信元は、Office 365 CDN を有効にすると既定で設定されます。 ただし、手動で有効にする場合は、次の手順に従います。
スタイル ライブラリをパブリック配信元として定義するには、 Add-PnPTenantCdnOrigin コマンドレットを使用します。
Add-PnPTenantCdnOrigin -CdnType Public -OriginUrl */style%20library
マスター ページをパブリック配信元として定義するには、 Add-PnPTenantCdnOrigin コマンドレットを使用します。
Add-PnPTenantCdnOrigin -CdnType Public -OriginUrl */masterpage
このコマンドとその構文の詳細については、「 Add-PnPTenantCdnOrigin」を参照してください。
コマンドを実行すると、システムはデータセンター全体で構成を同期します。 この結果には最大 15 分かかることがあります。
例: SharePoint Online のサイト資産、サイト ページ、および発行イメージのプライベート配信元を構成する
Add-PnPTenantCdnOrigin コマンドレットを使用して、サイト資産フォルダーをプライベート配信元として定義します。
Add-PnPTenantCdnOrigin -CdnType Private -OriginUrl */siteassets
Add-PnPTenantCdnOrigin コマンドレットを使用して、サイト ページ フォルダーをプライベート配信元として定義します。
Add-PnPTenantCdnOrigin -CdnType Private -OriginUrl */sitepages
公開イメージ フォルダーをプライベート配信元として定義するには、 Add-PnPTenantCdnOrigin コマンドレットを使用します。
Add-PnPTenantCdnOrigin -CdnType Private -OriginUrl */publishingimages
このコマンドとその構文の詳細については、「 Add-PnPTenantCdnOrigin」を参照してください。
コマンドを実行すると、システムはデータセンター全体で構成を同期します。 この結果には最大 15 分かかることがあります。
例: SharePoint Online のサイト コレクションのプライベート配信元を構成する
サイト コレクションをプライベート配信元として定義するには、 Add-PnPTenantCdnOrigin コマンドレットを使用します。 次に例を示します。
Add-PnPTenantCdnOrigin -CdnType Private -OriginUrl sites/site1/siteassets
このコマンドとその構文の詳細については、「 Add-PnPTenantCdnOrigin」を参照してください。
コマンドを実行すると、システムはデータセンター全体で構成を同期します。 [構成の保留中] メッセージが表示される場合があります。 この結果は、SharePoint Online テナントが CDN サービスに接続すると予想されます。 この結果には最大 15 分かかることがあります。
Office 365 CDN を管理する
CDN を設定したら、このセクションで説明するように、コンテンツを更新したり、ニーズの変更に応じて構成を変更したりできます。
Office 365 CDN から資産を追加、更新、または削除する
セットアップ手順を完了したら、新しい資産を追加し、必要に応じて既存の資産を更新または削除できます。 配信元として識別したフォルダーまたは SharePoint ライブラリ内の資産に変更を加えるだけです。 新しい資産を追加すると、すぐに CDN 経由で使用できます。 ただし、資産を更新すると、新しいコピーが反映されて CDN で使用できるようになるまで最大 15 分かかります。
配信元の場所を取得する必要がある場合は、 Get-PnPTenantCdnOrigin コマンドレットを 使用できます。 このコマンドレットの使用方法については、「 Get-PnPTenantCdnOrigin」を参照してください。
Office 365 CDN から配信元を削除する
配信元として識別したフォルダーまたは SharePoint ライブラリへのアクセスを削除できます。 このアクションを実行するには、 Remove-PnPTenantCdnOrigin コマンドレットを 使用します。
Remove-PnPTenantCdnOrigin -OriginUrl <path> -CdnType <Public | Private | Both>
このコマンドレットの使用方法については、「 Remove-PnPTenantCdnOrigin」を参照してください。
Office 365 CDN の配信元を変更する
作成後に配信元を変更することはできません。 代わりに、配信元を削除し、新しい配信元を追加します。 詳細については、「Office 365 CDN から配信元を削除するには」と「アセットの配信元を追加するには」を参照してください。
Office 365 CDN を無効にする
Set-PnPTenantCdnEnabled コマンドレットを使用して、organizationの CDN を無効にします。 CDN に対してパブリック配信元とプライベート配信元の両方を有効にしている場合は、次の例に示すようにコマンドレットを 2 回実行する必要があります。
CDN でパブリック 配信元の使用を無効にするには、次のコマンドを入力します。
Set-PnPTenantCdnEnabled -CdnType Public -Enable $false
CDN でのプライベート 配信元の使用を無効にするには、次のコマンドを入力します。
Set-PnPTenantCdnEnabled -CdnType Private -Enable $false
このコマンドレットの詳細については、「 Set-PnPTenantCdnEnabled」を参照してください。
Microsoft 365 用 CLI を使用してOffice 365 CDN を設定して構成する
このセクションの手順では、 Microsoft 365 の CLI が必要です。 を、login コマンドを使用してOffice 365 テナントに接続します。
Microsoft 365 用 CLI を使用して SharePoint Online で資産をホストするように CDN を設定して構成するには、次の手順を実行します。
を選択して展開する
Office 365 CDN を有効にする
テナントの Office 365 CDN の状態は spo cdn set コマンドを使用して管理できます。
テナントでOffice 365パブリック CDN を有効にするには、次のコマンドを実行します。
m365 spo cdn set --type Public --enabled true
Office 365 SharePoint CDN を有効にするには、次のコマンドを実行します。
m365 spo cdn set --type Private --enabled true
Office 365 CDN の現在の状況を確認する
CDN の特定の種類Office 365有効または無効になっているかどうかをチェックするには、spo cdn get コマンドを使用します。
Office 365パブリック CDN が有効になっているかどうかをチェックするには、次のコマンドを実行します。
m365 spo cdn get --type Public
Office 365 CDN 配信元を表示する
現在構成されているパブリック CDN 配信元Office 365表示するには、次のコマンドを実行します。
m365 spo cdn origin list --type Public
Office 365 CDN を有効にしたときに既定でプロビジョニングされる配信元については、「既定の CDN 配信元」を参照してください。
Office 365 CDN 配信元を追加する
重要
パブリック配信元として構成された SharePoint ドキュメント ライブラリに、organizationに対して機密性が高いと見なされるリソースを配置しないでください。
spo cdn origin add コマンドを使用して CDN の配信元を定義します。 複数の配信元を定義できます。 配信元は、CDN でホストする資産を含む SharePoint ライブラリまたはフォルダーを指す URL です。
m365 spo cdn origin add --type [Public | Private] --origin <path>
は path
、資産を含むフォルダーへの相対パスです。 相対パスに加え、ワイルドカードも使用できます。
すべてのサイトの マスター ページ ギャラリー にすべての資産をパブリック配信元として含めるには、次のコマンドを実行します。
m365 spo cdn origin add --type Public --origin */masterpage
特定のサイト コレクションのプライベート配信元を構成するには、次のコマンドを実行します。
m365 spo cdn origin add --type Private --origin sites/site1/siteassets
注:
CDN の配信元の追加後、CDN サービス経由でファイルを取得できるようになるまで最大 15 分かかることがあります。 特定の配信元が既に有効かどうかは、spo cdn origin list コマンドを使用して検証できます。
Office 365 CDN 配信元を削除する
spo cdn origin remove コマンドを使用して、指定した種類の CDN の配信元を削除します。
CDN 構成からパブリック配信元を削除するには、次のコマンドを実行します。
m365 spo cdn origin remove --type Public --origin */masterpage
注:
CDN 配信元を削除しても、配信元と一致するドキュメント ライブラリに格納されているファイルには影響しません。 これらの資産が SharePoint URL を使用して参照されている場合、SharePoint はドキュメント ライブラリを指す元の URL に自動的に切り替わります。 パブリック CDN URL を使用して資産が参照されている場合、配信元を削除するとリンクが解除され、手動で変更する必要があります。
Office 365 CDN 配信元を変更する
既存の CDN の配信元を変更することはできません。 代わりに、spo cdn origin remove
コマンドを使用して定義済みの CDN の配信元を削除して、spo cdn origin add
コマンドで新しい配信元を作成する必要があります。
Office 365 CDN に含めるファイルの種類を変更する
既定では、CDN .css
.gif
.jpg
.jpeg
.js
.map
.ico
.eot
.svg
.ttf
.png
.woff
には、および .woff2
のファイルの種類が含まれます。 CDN に他の種類のファイルを含める必要がある場合、spo cdn policy set コマンドを使用して CDN 構成を変更できます。
注:
ファイルの種類のリストを変更する場合、現在定義されているリストを上書きします。 他のファイルの種類を追加する場合は、spo cdn policy list コマンドを最初に使用して現在構成されているファイルの種類を確認します。
パブリック CDN に含まれるファイルの種類の既定の一覧に JSON ファイルの種類を追加するには、次のコマンドを実行します。
m365 spo cdn policy set --type Public --policy IncludeFileExtensions --value "CSS,EOT,GIF,ICO,JPEG,JPG,JS,MAP,PNG,SVG,TTF,WOFF,JSON"
Office 365 CDN から除外するサイトの分類のリストを変更する
spo cdn policy set コマンドを使用して、CDN で使用したくないサイト分類を除外します。 既定で除外されるサイトの分類はありません。
注:
除外するサイトの分類のリストを変更する場合、現在定義されているリストを上書きします。 他の分類を除外する場合は、spo cdn policy list コマンドを最初に使用して現在構成されている分類を確認します。
HBI として分類されたサイトをパブリック CDN から除外するには、次のコマンドを実行します。
m365 spo cdn policy set --type Public --policy ExcludeRestrictedSiteClassifications --value "HBI"
Office 365 CDN を無効にする
Office 365 CDN を無効にするには、spo cdn set
コマンドを使用します。たとえば、次のように実行します。
m365 spo cdn set --type Public --enabled false
CDN 資産の使用
CDN を有効にし、配信元とポリシーを構成したら、CDN 資産の使用を開始できます。
このセクションでは、SharePoint のページとコンテンツで CDN URL を使用して、パブリック配信元とプライベート配信元の両方の資産に対する要求を CDN にリダイレクトする方法について説明します。
CDN を使用してクライアント側 Web パーツをホストする方法については、「CDN からクライアント側 Web パーツをホストする (パート 4 Hello World)」Office 365参照してください。
注:
ClientSideAssets フォルダーをプライベート CDN 配信元の一覧に追加すると、CDN でホストされるカスタム Web パーツのレンダリングに失敗します。 SPFX Web パーツで使用されるファイルはパブリック CDN のみを利用でき、ClientSideAssets フォルダーはパブリック CDN の既定の配信元です。
CDN アセットへのリンクの更新
配信元に追加したアセットを使用するには、元のファイルへのパスを使用して元のファイルへのリンクを更新するだけです。
- 配信元に追加したアセットへのリンクを含むページまたはコンテンツを編集します。 また、複数の方法のいずれかを使用して、表示されるすべての場所で特定の資産へのリンクを更新する場合は、Enter サイトまたはサイト コレクション全体のリンクをグローバルに検索して置き換えることもできます。
- 配信元のアセットへのリンクごとに、パスを CDN 配信元のファイルへのパスに置き換えます。 相対パスを使用できます。
- ページまたはコンテンツを保存します。
たとえば、ドキュメント ライブラリ フォルダー /site/CDN_origins/public/ にコピーしたイメージ /site/SiteAssets/images/image.png を考えてみましょう。 CDN 資産を使用するには、イメージ ファイルの場所への元のパスを配信元へのパスに置き換えて、新しい URL /site/CDN_origins/public/image.pngにします。
相対パスではなく資産への完全な URL を使用する場合は、次のようにリンクを作成します。
https://<TenantHostName>.sharepoint.com/sites/site/CDN_origins/public/image.png
注:
一般に、CDN 内の資産に URL を直接ハードコーディングしないでください。 ただし、必要に応じて、パブリック配信元のアセットの URL を手動で作成できます。 詳細については、「 パブリック資産の CDN URL のハードコーディング」を参照してください。
CDN からアセットが提供されていることを確認する方法については、「Office 365 CDN のトラブルシューティング」の「アセットが CDN によって処理されていることを確認操作方法」を参照してください。
パブリック配信元での資産の使用
SharePoint Online の 発行機能 は、パブリック配信元に格納されている資産の URL を CDN と同等の URL に自動的に書き換えて、SharePoint ではなく CDN サービスからアセットを処理できるようにします。
配信元が発行機能が有効になっているサイトにあり、CDN にオフロードする資産が次のいずれかのカテゴリにある場合、SharePoint は、アセットが CDN ポリシーによって除外されていない場合、配信元の資産の URL を自動的に書き換えます。
次の例は、SharePoint 発行機能によってリンクが自動的に書き直される概要です。
- 従来の発行ページ HTML 応答の IMG/LINK/CSS URL。
- これには、ページの HTML コンテンツ内で作成者によって追加された画像が含まれます。
- Picture Library SlideShow Webpart イメージ URL。
- SPList REST API (RenderListDataAsStream) の画像フィールドの結果。
- 新しいプロパティ ImageFieldsToTryRewriteToCdnUrls を使用して、フィールドのコンマ区切りのリストを指定します。
- ハイパーリンク フィールドと PublishingImage フィールドをサポートします。
- SharePoint イメージの表示。
次の図は、SharePoint がパブリック配信元から資産を含むページの要求を受け取るワークフローを示しています。
ヒント
ページ上の特定の URL の自動書き換えを無効にする場合は、ページをチェックしてクエリ文字列パラメーター を追加できます。NoAutoReWrites=true は、無効にする各リンクの末尾です。
パブリック資産の CDN URL の構築
公開機能がパブリック配信元に対して有効になっていない場合、またはアセットが CDN サービスの自動書き換え機能でサポートされているリンクの種類の 1 つでない場合は、アセットの CDN の場所への URL を手動で作成し、コンテンツでこれらの URL を使用できます。
注:
URL の最後のセクションを形成する必要なアクセス トークンはリソースの要求時に生成されるため、プライベート配信元の資産に CDN URL をハードコーディングまたは構築することはできません。 パブリック CDN の URL を作成できます。URL は変更される可能性があるため、ハードコーディングしないでください。
パブリック CDN 資産の場合、URL 形式は次の例のようになります。
https://publiccdn.sharepointonline.com/<TenantHostName>/sites/site/library/asset.png
TenantHostName をテナント名に置き換えます。 次に例を示します。
https://publiccdn.sharepointonline.com/contoso.sharepoint.com/sites/site/library/asset.png
注:
URL は変更される可能性があるため、ページ コンテキスト プロパティを使用して、ハード コーディング https://publiccdn.sharepointonline.com
ではなくプレフィックスを作成します。 クラシック SharePoint Online で表示テンプレートを使用する場合は、表示テンプレートのプロパティ window._spPageContextInfo.publicCdnBaseUrl
を URL のプレフィックスとして使用できます。 モダンおよびクラシック SharePoint に SPFx Web パーツを使用する場合は、 プロパティ this.context.pageContext.legacyPageContext.publicCdnBaseUrl
を使用できます。これはプレフィックスも提供します。 プレフィックスが変更されると、実装が更新されます。
SPFx の例として、 プロパティ this.context.pageContext.legacyPageContext.publicCdnBaseUrl
host
- - relativeURL for the item
/
- /
- を使用して URL を構築できます。 詳細については、シーズン 1 のパフォーマンス シリーズの一部であるクライアント側コードでの CDN の使用に関するビデオを参照してください。
プライベート配信元での資産の使用
プライベート配信元で資産を使用するために追加の構成は必要ありません。 SharePoint Online では、プライベート配信元のアセットの URL が自動的に書き換えられるので、それらの資産に対する要求は常に CDN から提供されます。 これらの URL には、資産が要求された時点で SharePoint Online によって自動生成される必要があるトークンが含まれているため、プライベート配信元の CDN 資産への URL を手動で構築することはできません。
プライベート配信元の資産へのアクセスは、配信元に対するユーザーのアクセス許可に基づいて動的に生成されたトークンによって保護されます。次のセクションで説明する注意点があります。 CDN がコンテンツをレンダリングするには、少なくとも配信元への 読み取り アクセス権が必要です。
次の図は、SharePoint がプライベート配信元から資産を含むページの要求を受け取るワークフローを示しています。
プライベート配信元でのトークンベースの承認
Office 365 CDN のプライベート配信元の資産へのアクセスは、SharePoint Online によって生成されたトークンによって付与されます。 配信元によって指定されたフォルダーまたはライブラリへのアクセス許可を既に持っているユーザーには、アクセス許可レベルに基づいてファイルにアクセスできるトークンが自動的に付与されます。 これらのアクセス トークンは、トークンリプレイ攻撃を防ぐために生成されてから 30 分から 90 分間有効です。
アクセス トークンが生成されると、SharePoint Online は、2 つの承認パラメーター eat (エッジ承認トークン) と oat (配信元承認トークン) を含むカスタム URI をクライアントに返します。 各トークンの構造は、<"エポック時間形式の有効期限" '>__'<secure signature' です>。 次に例を示します。
https://privatecdn.sharepointonline.com/contoso.sharepoint.com/sites/site1/library1/folder1/image1.jpg?eat=1486154359_cc59042c5c55c90b26a2775323c7c8112718431228fe84d568a3795a63912840&oat=1486154359_7d73c2e3ba4b7b1f97242332900616db0d4ffb04312
注:
トークンを所有しているユーザーは、CDN 内のリソースにアクセスできます。 ただし、これらのアクセス トークンを含む URL は HTTPS 経由でのみ共有されるため、トークンの有効期限が切れる前にエンド ユーザーが URL を明示的に共有しない限り、未承認のユーザーは資産にアクセスできません。
アイテム レベルのアクセス許可は、プライベート配信元の資産ではサポートされていません
SharePoint Online では、プライベート配信元の資産に対するアイテム レベルのアクセス許可はサポートされていない点に注意してください。 たとえば、 にある https://contoso.sharepoint.com/sites/site1/library1/folder1/image1.jpg
ファイルの場合、ユーザーは次の条件を満たしてファイルに効果的にアクセスできます。
User | アクセス許可 | 有効なアクセス |
---|---|---|
ユーザー 1 | folder1 へのアクセス権を持つ | CDN から image1.jpg にアクセスできます |
ユーザー 2 | folder1 へのアクセス権がありません | CDN から image1.jpg にアクセスできない |
ユーザー 3 | folder1 へのアクセス権はありませんが、SharePoint Online で image1.jpg にアクセスするための明示的なアクセス許可が付与されます | SharePoint Online から直接資産 image1.jpg にアクセスできますが、CDN からはアクセスできません |
ユーザー 4 | folder1 にアクセスできますが、SharePoint Online で image1.jpg へのアクセスが明示的に拒否されました | SharePoint Online から資産にアクセスできませんが、SharePoint Online のファイルへのアクセスが拒否されているにもかかわらず、CDN から資産にアクセスできます |
Office 365 CDN のトラブルシューティング
アセットが CDN によって提供されていることを確認操作方法。
CDN アセットへのリンクをページに追加した後、ページを参照してイメージを右クリックし、イメージ URL を確認することで、CDN からアセットが提供されていることを確認できます。
ブラウザーの開発者ツールを使用して、ページ上の各資産の URL を表示したり、サード パーティのネットワーク トレース ツールを使用したりすることもできます。
注:
Fiddler などのネットワーク ツールを使用して SharePoint ページからアセットをレンダリングする外部でアセットをテストする場合は、URL が SharePoint Online テナントのルート URL である GET 要求に、リファラー ヘッダー "Referer: https://yourdomain.sharepoint.com
" を手動で追加する必要があります。
SharePoint Online から参照元が必要なため、Web ブラウザーで CDN URL を直接テストすることはできません。 ただし、CDN アセット URL を SharePoint ページに追加し、ブラウザーでページを開くと、CDN アセットがページにレンダリングされます。
Microsoft Edge ブラウザーで開発者ツールを使用する方法の詳細については、「 Microsoft Edge 開発者ツール」を参照してください。
CDN が動作していることを確認する方法を示す SharePoint 開発者パターンとプラクティス YouTube チャネルでホストされている短いビデオをwatchするには、「CDN の使用状況を確認し、最適なネットワーク接続を確保する」を参照してください。
新しい配信元のアセットが使用できないのはなぜですか?
新しい配信元のアセットは、登録が CDN 経由で反映され、アセットが配信元から CDN ストレージにアップロードされるまでに時間がかかるため、すぐには使用できません。 CDN で資産を使用するために必要な時間は、アセットの数とファイル サイズによって異なります。
クライアント側の Web パーツまたはSharePoint Framework ソリューションが機能しない
パブリック配信元に対して Office 365 CDN を有効にすると、CDN サービスによって次の既定の配信元が自動的に作成されます。
- */Masterpage
- */STYLE LIBRARY
- */CLIENTSIDEASSETS
*/clientsideassets の配信元が見つからない場合、SharePoint Frameworkソリューションは失敗し、警告メッセージやエラー メッセージは生成されません。 - NoDefaultOrigins パラメーターを $true に設定して CDN が有効になっていたか、配信元が手動で削除されたため、この配信元が見つからない可能性があります。
次の PowerShell コマンドを使用して、どの配信元が存在するかを確認チェック。
Get-SPOTenantCdnOrigins -CdnType Public
または、Microsoft 365 の CLI を使用してチェックすることもできます。
m365 spo cdn origin list
PowerShell で配信元を追加するには:
Add-SPOTenantCdnOrigin -CdnType Public -OriginUrl */CLIENTSIDEASSETS
Microsoft 365 用 CLI を使用して配信元を追加するには:
m365 spo cdn origin add --origin */CLIENTSIDEASSETS
Office 365 CDN で動作するために必要な PowerShell モジュールと CLI シェルは何ですか?
SharePoint Online Management Shell PowerShell モジュールまたは Microsoft 365 用 CLI を使用して、Office 365 CDN を操作できます。