簡體   English   中英

如何在使用Azure Webjobs和計划部署Web項目時啟用非交互式身份驗證?

[英]How to enable non-interactive authentication when deploying Web project with Azure Webjobs and schedules?

問:在使用Azure Webjobs和計划部署Web項目時,如何為多個訂閱啟用非交互式身份驗證(通過管理證書)?

全文:前段時間我們在Azure / .NET項目中添加了一個Azure WebJob(預定)。 在我們嘗試部署它之前,我們非常喜歡這種簡單性,特別是使用CI。 我們使用Jenkins進行“一鍵式”部署到生產。

但是,為了使Web項目與Web項目一起發布(特別是為了創建調度程序),我們需要啟用非交互式Azure身份驗證 ,這是WebJobs帶來的令人不快的驚喜。 但是我們通過將“webjob.props”文件添加到包含管理證書的WebJob項目的屬性來解決這個問題。 這是代碼:

<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(Jenkins)到多個訂閱的部署。 非交互式身份驗證應該適用於所有這些身份驗證。 實現這一目標最簡單的方法是什么? 我找不到關於這個主題的好資源。 我正在考慮以某種方式進行webjobs.props文件的構建配置特定轉換。 但是如果可能的話,我想避免使用更清潔的解決方案。

部署計划的WebJob包含兩個不同的部分:

  1. 將WebJob文件部署到Web App
  2. 設置調度程序

我猜你的問題更多地與#2相關而不是#1。 好消息是,有一種使用CRON表達式調度WebJob的替代方法,這可以通過將文件部署到Web App(因此沒有#2)來實現。 您可以在文檔中找到有關它的更多詳細信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM