問:如何在使用Azure Web作業和時間表部署Web項目時啓用非交互式身份驗證(通過管理證書)以實現多個訂閱?如何在使用Azure Web作業和時間表部署Web項目時啓用非交互式身份驗證?
全文: 前段時間,我們在Azure/.NET項目中添加了一個Azure WebJob(預定)。在嘗試部署它之前,我們非常喜歡它的簡單性,特別是使用CI。我們使用Jenkins進行「單擊」部署到生產。
但是,爲了使WebJobs與Web項目一起發佈(特別是要創建Scheduler),我們需要啓用Non-Interactive Azure Authentication,這是WebJobs帶來的一個令人不快的驚喜。但是我們通過將「webjob.props」文件添加到包含Management證書的WebJob項目的Properties中來解決這個問題。下面是代碼:
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Target Name="AfterSetScheduleProperties" AfterTargets="SetScheduleProperties">
<PropertyGroup>
<ManagementCertificate>Here is the cert.</ManagementCertificate>
<SubscriptionId>Here was our production subscription ID</SubscriptionId>
</PropertyGroup>
</Target>
</Project>
所以,現在終於一個問題:我們需要從我們的CI(詹金斯)多種簽約支持部署。非交互式身份驗證應該適用於所有這些身份驗證。什麼是實現這個最簡單的方法?我無法找到有關此主題的良好資源。我正在考慮以某種方式對webjobs.props文件進行構建特定的轉換。但我希望儘可能避免使用更乾淨的解決方案。