はじめに
Azure CDNはパブリックにアクセスできるところからキャッシュします。しかし、保護されたプライベートのストレージアカウントからキャッシュしたい場合が発生します。特定のファイルに対してSASを利用してキャッシュする必要があります。その方法を説明していきます。
すでにCDNにストレージアカウントがエンドポイントとして登録されていることが前提です。
下記を参考にしています。
設定
ストレージアカウントはプライベートの設定になっています。
キャッシュするファイルとしてcdn2.txtを配置しています。

SASの発行
SASを発行します。最低限のアクセス許可をします。

発行されたSASはコピーしておきます。

発行されたSASを利用してファイルにアクセスできることを確認します。

設定しない場合は当然アクセスできません。

また、この時点ではキャッシュされていないことも分かります。
CDNの設定
SASを設定してキャッシュします。これはCDNのエンドポイントを開き、キャッシュ規則を開きます。
クエリ文字列のキャッシュ動作を、一意のURLをすべてキャッシュするに設定します。

設定はこれで完了です。
確認
CDNでアクセスできるか確認するには、CDNエンドポイントのURLにSASを含める必要があります。
アクセスできること確認します。

結局のところ、CDNのエンドポイントにSASを含めるため、有効期限をしっかりと決めておくことをがベストプラクティスです。
まとめ
プライベートのBlobからキャッシュするケースは多くはないと思いますが、できることを確認しておくことが良いでしょう。

