2017-07-06 154 views
2

我有一個控制檯應用程序,它具有在VM上運行的日誌記錄,日程安排等。它適用於實體框架,Azure SQL Server,Azure blob存儲和一堆外部API。將C#控制檯應用程序作爲Azure Web作業發佈

我想把它變成一項服務。

我知道這可以通過工作角色來完成,但是查看工人角色的各種教程,似乎要重寫整個事情將是一大堆工作。

如果我只是將它作爲網絡工作發佈,假設我沒有任何暴露的終結點,這是否安全?我需要確保我們的活動目錄之外沒有人可以訪問它。

有沒有一種方法可以創建一個虛擬應用程序服務,它將沒有終端並在那裏發佈?

+1

是的,如果它不暴露任何端點,沒有人可以訪問它。 –

回答

2

如果我只是將它作爲一個web工作發佈,假設我沒有任何暴露的端點,這是否安全?我需要確保我們的活動目錄之外沒有人可以訪問它。

正如Peter Bons所說,如果它沒有公開API或端點,則沒有人可以訪問它。

有沒有一種方法可以創建一個虛擬應用程序服務,它將沒有終端並在那裏發佈?

通常,我們在Azure App Service Web應用程序中運行WebJobs,並且可以通過URL訪問/瀏覽Azure App Service Web應用程序。如果要阻止用戶瀏覽到該Azure App Service Web應用程序,則可以將重寫規則添加到站點的web.config中,以便block web access

<rule name="Block unauthorized traffic to staging sites" stopProcessing="true">   
<match url=".*" />   
<conditions>   
<!-- Enter your site host name here as the pattern-->   
<add input="{HTTP_HOST}" pattern="^sitehostname\." />   
<!-- Enter your white listed IP addresses -->   
<add input="{REMOTE_ADDR}" pattern="123\.123\.123\.1" negate="true"/>   
<!-- Add the white listed IP addresses with a new condition as seen below -->   
<!-- <add input="{REMOTE_ADDR}" pattern="123\.123\.123\.2" negate="true"/> -->   
</conditions>   
<action type="CustomResponse" statusCode="403" statusReason="Forbidden"   
statusDescription="Site is not accessible" />   
</rule>  
1

究竟你的exe是什麼?有人會調用它並計劃定期運行嗎? 我們在這裏有幾個選項,如果處理邏輯不是一個複雜的,你可以去Azure functions,它使用WebJobs SDK本身,但不需要爲其配置App Service。 或者你可以去Azure Scheduler這可以採取你的可執行文件並按照預定的時間間隔運行。

相關問題