セキュア ファイルの使用
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
セキュア ファイルを使うと、パイプライン間で共有できるファイルを格納できます。 セキュア ファイル ライブラリを使って、次のようなファイルを格納します。
- 署名証明書
- Apple プロビジョニング プロファイル
- Android キーストア ファイル
- SSH キー
これらのファイルはサーバーに格納でき、リポジトリにコミットする必要はありません。
セキュア ファイルの内容は暗号化され、タスクから使うときにのみ使用できます。 セキュア ファイルは保護されたリソースです。 承認とチェックを追加し、パイプラインのアクセス許可を設定できます。 セキュア ファイルでは、ライブラリ セキュリティ モデルを使うこともできます。
各セキュア ファイルのサイズの上限は 10 MB です。
セキュア ファイルを追加する
[パイプライン]>[ライブラリ]>[セキュア ファイル] に移動します。
[セキュア ファイル] を選んで、新しいセキュア ファイルをアップロードします。 参照してファイルをアップロードするかドラッグ アンド ドロップします。 このファイルは削除できますが、置き換えることはできません。
ファイルにアクセス許可を追加します。
- [パイプライン]>[ライブラリ]の [セキュリティ] タブから、すべてのファイルにセキュリティ ロールの制限を適用します。
- 個々のファイルのアクセス許可を追加するには、ファイルの編集ビューで [パイプラインのアクセス許可] を選んで、パイプラインごとのアクセス許可を設定します。 または、[セキュリティ] を選択してセキュリティ ロールを設定します。
- ファイルに [承認とチェック] を設定することもできます。 詳しくは、承認とチェックに関する記事をご覧ください。
パイプラインでセキュア ファイルを使用する
パイプラインでセキュア ファイルを使うには、セキュア ファイルのダウンロード ユーティリティ タスクを使います。
次の YAML パイプラインの例では、セキュリティで保護された証明書ファイルをダウンロードして、Linux 環境にインストールします。
- task: DownloadSecureFile@1
name: caCertificate
displayName: 'Download CA certificate'
inputs:
secureFile: 'myCACertificate.pem'
- script: |
echo Installing $(caCertificate.secureFilePath) to the trusted CA directory...
sudo chown root:root $(caCertificate.secureFilePath)
sudo chmod a+r $(caCertificate.secureFilePath)
sudo ln -s -t /etc/ssl/certs/ $(caCertificate.secureFilePath)
よく寄せられる質問
Q: セキュア ファイルを使ってカスタム タスクを作成するにはどうすればよいですか?
A: task.json
で secureFile
型の入力を使うことで、セキュア ファイルを使う独自のタスクをビルドします。
カスタム タスクをビルドする方法についてはこちらをご覧ください。
Apple プロビジョニング プロファイルのインストール タスクは、セキュア ファイルを使うタスクの簡単な例です。 リファレンス ドキュメントとソース コードをご覧ください。
ビルドまたはリリースの間のセキュア ファイルの処理については、こちらにある一般的なモジュールをご覧ください。
Q: 自分のタスクでセキュア ファイルにアクセスできません。 どうすればよいですか。
A: エージェントが 2.116.0 以降のバージョンを実行していることを確認します。 「エージェントのバージョンとアップグレード」をご覧ください。
Q: 特定のパイプラインで使うためにセキュア ファイルを承認するにはどうすればよいです?
A:
- Azure Pipelines で、[ライブラリ] タブを選びます。
- 上部にある [セキュア ファイル] タブを選びます。
- 承認するセキュア ファイルを選びます。
- [パイプラインのアクセス許可] ボタンを選びます。
- 利用できる各パイプラインのアクセス権を確認して変更します。
Q: Azure DevOps Server と TFS オンプレミスでセキュア ファイルをダウンロードするときに Invalid Resource
エラーが表示されるのはなぜですか?
A: TFS または Azure DevOps Server で IIS 基本認証が無効になっていることを確認します。
Q: セキュア ファイルはどのようにセキュリティ保護されますか?
A: セキュア ファイル、変数グループ、サービス接続はすべて、Azure DevOps で同じ方法でセキュリティ保護されます。 これらはすべて保護されたリソースでもあります。
シークレットは暗号化されてデータベースに格納されます。 シークレットを解読するためのキーは、Azure Key Vault に格納されます。 キーは、スケール ユニットごとに固有です。 そのため、同じキーが 2 つのリージョンで共有されることはありません。 また、キーは、Azure DevOps のデプロイのたびにローテーションされます。
セキュリティ保護されたキーを取得するための権限は、Azure DevOps サービス プリンシパルと、(特別な場合に) 問題を診断するためにオンデマンドでのみ付与されます。 セキュリティ保護されたストレージにはどのような認定もありません。
Azure Key Vault は、機密情報をセキュリティで保護するための、もう 1 つのいっそう安全なオプションです。 Azure Key Vault を使う場合は、変数グループで使うことができます。
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示