キーボルトとその中に秘密を作成するためのテンプレートがあります。私はまた、Vault URI、証明書のURL、および証明書の拇印の3つのものを必要とするサービスファブリックテンプレートを持っています。デプロイメントの主要なボールト値とリンクされたテンプレートのパラメータ
powershellでキーボルトと秘密を作成すると、出力からこれらの3つのものを手動でコピーし、サービスファブリックテンプレートのパラメータに貼り付けるのは簡単です。しかし、この証明書がサービスファブリッククラスタと同じライフサイクルを持っていることから、キーボルトテンプレートからサービスファブリックテンプレートにリンクすることが、私が望んでいることです。キーボルトと秘密を展開すると(btwは文字列にコード化された基数64であるキーですが、これをさらに別のキー格納域の秘密として持つことができます...)、パラメータとして3つの値を渡すことができます。
私には2つの質問があります。
アームテンプレートで3つの値を取得するにはどうすればよいですか。 Powershellは、それらをキーボルトの「ResourceId」、シークレットの「Id」、シークレットの「Version」として出力します。私の試み:
"sourceVaultValue": { "value": "resourceId('Microsoft.KeyVault/vaults/', parameters('keyVaultName')" }, "certificateThumbprint": { "value": "[listKeys(resourceId('secrets', parameters('secretName')), '2015-06-01')" }, "certificateUrlValue": { "value": "[concat('https://', parameters('keyVaultName'), '.vault.azure.net:443/secrets/', parameters('secretName'), resourceId('secrets', parameters('secretName')))]"
しかしcertificateUrlValueが正しくありません。私はlistKeysの有無にかかわらず試してみましたが、いずれもうまくいかなかったのがわかります(拇印はcertUrl自体の中にあります)
- 正しい値を取得する場合は、それらをパラメータとして次のテンプレートに渡そうとします。問題のテンプレートには、私が渡したいものよりもかなり多くのパラメータがあります。ですから、parametersLink要素をパラメータファイルにリンクさせることは可能ですか?または、これを行うための意図した方法がありますか?
乾杯
Ed - 秘密を作成するテンプレートの出力セクションの上にJSONスニペットがあることを確認してください。 –
それはもともとではありませんでした。私は、リンクされたテンプレートのparameters要素にそれを持っていました。そして、それを出力セクションに移動してテストしました。彼らの前に「参照」が必要なことが私には起こりますか?私はatm thoをチェックすることはできません。私たちは明日再会する必要があります:) –