16.2. イメージの Web インポートソースの制御
Web インポートによるイメージダウンロードのソースを制限することができます。そのためには、オプションの glance-image-import.conf
ファイルに URI のブラックリストおよび許可リストを追加します。
3 段階のレベルで、イメージソースの URI を許可またはブロックすることができます。
- スキームレベル (allowed_schemes、disallowed_schemes)
- ホストレベル (allowed_hosts、disallowed_hosts)
- ポートレベル (allowed_ports、disallowed_ports)
レベルにかかわらず、許可リストとブロックリストの両方を指定した場合には、許可リストが優先されブロックリストは無視されます。
Image サービス (glance) は、以下の判断ロジックを使用してイメージソースの URI を検証します。
スキームを確認する。
- スキームが定義されていない場合: 拒否する。
- 許可リストがあり、そのスキームが許可リストに記載されていない場合: 拒否する。記載されている場合: c 項をスキップして 2 項に進む。
- ブロックリストがあり、そのスキームがブロックリストに記載されている場合: 拒否する。
ホスト名を確認する。
- ホスト名が定義されていない場合: 拒否する。
- 許可リストがあり、そのホスト名が許可リストに記載されていない場合: 拒否する。記載されている場合: c 項をスキップして 3 項に進む。
- ブロックリストがあり、そのホスト名がブロックリストに記載されている場合: 拒否する。
URI にポートが含まれていれば、ポートを確認する。
- 許可リストがあり、そのポートが許可リストに記載されていない場合: 拒否する。記載されている場合: b 項をスキップして 4 項に進む。
- ブロックリストがあり、そのポートがブロックリストに記載されている場合: 拒否する。
- 有効な URI として受け入れる。
(許可リストに追加する、あるいはブロックリストに登録しないことにより) スキームを許可した場合には、URI にポートを含めないことでそのスキームのデフォルトポートを使用する URI は、すべて許可されます。URI にポートが含まれている場合には、URI はデフォルトの判断ロジックに従って検証されます。