FTP 配接器的最佳做法和建議
閱讀 FTP 配接器的最佳做法、安全性建議和增強功能。
最佳做法
定期刪除暫存資料夾中部分接收的檔案,以避免檔案因使用電腦資源,而導致可能中斷服務。
使用資料流處理伺服器時,會拒絕對新檔案的讀取,直到 MessageBox 資料庫收到整個檔案為止。 若 FTP 配接器提交了部分檔案至 MessageBox 資料庫,則 MessageBox 資料庫將會成功儲存訊息,但是 FTP 配接器將無法刪除接收位置的部分訊息。
若要確保 FTP 配接器接收處理常式的高可用性,應將 FTP 配接器接收處理常式設定為在已叢集的 BizTalk 主控件執行個體中執行。 如需詳細資訊,請參閱 在叢集主機內執行配接器處理常式的考慮。
安全性建議和秘訣
BizTalk Server可以從檔案傳輸通訊協定 (FTP) 伺服器接收檔案,並將檔案傳送至 FTP 伺服器以供其他應用程式使用。 BizTalk Server 不能做為 FTP 伺服器。
FTP 本質上並不安全:使用者名稱、密碼和其他認證會以純文字周遊網路。 同樣的,上傳或下載的檔案是以純文字移動,可輕易地在途中被檢視或修改。 此外,攻擊者可以假冒 FTP 伺服器本身 (又稱為惡意伺服器攻擊)。 在這種情況下,您無法分辨特定 FTP 伺服器是否確實是您要通訊的電腦。
為了克服這些問題,FTP 配接器支援 SSL/TLS 通訊協定,以確保透過加密的資料機密性。
如需使用 FTP 通訊協定時的一般安全性考慮,請參閱 網際網路常見問題封存 (https://go.microsoft.com/fwlink/p/?LinkId=24779) 。
建議您使用下列指導方針,在環境中部署 FTP 配接器並保護其安全:
保護您的伺服器,並限制資料的存取。 由於 FTP 通訊協定並非安全的通訊協定,因此總是容易受到攻擊。 您可以使用專用連線和限制 BizTalk Server 與 FTP 主機之間的伺服器與連線,來確保 FTP 伺服器的安全。 您也可以設定 FTP 伺服器的安全性原則,以與 FTP 用戶端安全地連線。
設定 FTP 配接器使用安全通訊端層 (SSL) 通訊協定,以在配接器與 FTP 伺服器之間進行通訊。 SSL 通訊協定可透過加密確保資料機密性無虞。 這表示使用者識別碼與密碼都會加密,而不會以純文字傳送。 使用 FTP 配接器,您也可以選擇加密 FTP 連線的資料通道。 請參閱本主題中的 增強 功能 () 。
若要達成安全檔案傳輸,請設定 FTP 配接器所提供的 SSL 特定屬性。 請參閱本主題中的 增強 功能 () 。
FTP 配接器支援 RFC) 959 (FTP 要求。 請參閱 World Wide Web Consortium (W3C) (https://go.microsoft.com/fwlink/p/?LinkId=24781) 。 FTP 配接器不支援「安全 FTP」(SFTP) 通訊協定。 請參閱 SFTP 配接器。
您可以跨防火牆使用 FTP 配接器。 根據您使用的防火牆類型,您可能必須設定下列一或多個防火牆屬性:使用者名稱、密碼、電腦、埠、防火牆類型 (none、socks 4、socks 5) 和 mode。
建議您將遠端 FTP 伺服器放在安全的位置。 您必須確定此伺服器的實體和網路安全性,讓惡意伺服器的攻擊降至最低。
FTP 配接器支援使用「企業單一登入」(SSO)。 請參閱 實作企業單一登入。
根據預設,FTP 接收配接器因為會在下載後,從伺服器刪除檔案,所以必須具有 FTP 伺服器的寫入權限。 不過,FTP 配接器支援從唯讀位置下載檔案。 請參閱本主題中的 增強 功能 () 。
使用 FTP 傳送埠時,必須在設定傳送埠時指定和儲存使用者識別碼與密碼組合。 配接器會使用此資訊,連線到 FTP 伺服器。 使用者認證是以純文字儲存於 SQL Server 資料庫中。 在動態傳送埠中,認證會傳送到 FTP 伺服器。 若生產環境需要較強的安全性,請對伺服器使用匿名認證。
當系統提示您輸入帳戶時,建議您輸入現有的使用者帳戶,而不是本機系統帳戶。 如此可讓您實作較佳的安全性,並讓配接器以自動模式執行,而不需登入。
功能增強
從安全的 FTP 伺服器來回傳輸資料
FTP 配接器支援透過安全通訊端層 (SSL) /傳輸層級安全性 (TLS) ,從 FTPS 伺服器進行檔案傳輸。 SSL/TLS 可透過加密確保資料的機密性。 您必須設定配接器所提供的 SSL 特有屬性,以啟用安全模式。 由於配接器同時允許在安全 FTP 伺服器讀取及寫入資料,因此在設定傳送處理常式/傳送埠以及使用接收處理常式/接收位置時,也可使用 SSL 特有屬性。
從 BizTalk Server 2016 開始,FTP 配接器不再需要 SYST 命令:
FTP 伺服器類型 屬性 – 將此屬性設定為使用不需要 SYST 命令的伺服器。
可用來設定 SSL 特有屬性的選項如下:
使用 SSL 屬性 – 設定此屬性,讓 FTP 配接器必須針對每個傳輸會話使用 SSL。
啟用資料保護 屬性 – 設定此屬性以開啟資料加密。 FTPS 伺服器的安全性原則必須允許配接器使用安全 SSL 連線,此設定才可正常運作。
FTPS 連線模式 屬性 – 設定此屬性以判斷何時啟用安全性:
在 隱含 模式中,當配接器連線到伺服器時,就會自動開啟安全性。
在 [明確 ] 模式中,配接器會傳送命令來起始安全控制通道。
注意
FTP 配接器不支援對伺服器憑證進行撤銷檢查。
支援從標示為唯讀的位置下載檔案
FTP 配接器支援從唯讀檔案位置下載檔案。 配接器現在會將下載檔案的清單保存在資料庫中。 下次下載時,FTP 伺服器上的檔案清單會與配接器所維護的檔案清單進行比較,而僅下載伺服器上多出的新檔案。 若要支援在兩個下載之間更新現有檔案的案例,您可以設定配接器,藉由設定 FTP 接收位置的 [啟用時間戳記比較] 屬性來檢查檔案時間戳記。 在這種情況下,即使檔案名相同,但時間戳記已更新,配接器仍會下載檔案。
有時候 FTP 伺服器不支援讓修改過的時間戳記與檔案產生關聯。 在這種情況下,配接器可讓您指定過了多少時間就要重新下載檔案的間隔。 您可以設定 FTP 接收位置的 Redownload Interval 屬性來設定此間隔。
下表列出針對 [ 下載後刪除後]、 [啟用時間戳記比較 ] 和 [ 重新下載間隔 ] 屬性所設定之不同值之 FTP 配接器的預期行為。
下載後刪除 | 啟用時間戳記比較 | 重新下載間隔 | 配接器行為 |
---|---|---|---|
是 | 不適用 | 不適用 | 配接器會在下載檔案之後,從 FTP 伺服器刪除該檔案。 這是配接器的預設行為。 |
No | 是 | 不適用 | 配接器在下載檔案之後,不會從 FTP 伺服器刪除該檔案。 但是配接器會使用 MDTM 命令,比較檔案的上次修改時間戳記。 配接器會根據時間戳記重新下載檔案。 |
No | No | 適用 | FTP 配接器會在過了您指定的間隔之後從 FTP 伺服器下載檔案,無論檔案是否經過修改。 |
支援在 ASCII 模式下以不可部分完成的方式傳輸檔案
FTP 配接器支援 ASCII 模式的不可部分完成檔案傳輸。 若要啟用 ASCII 模式的不可部分完成檔案傳輸,配接器會使用 暫存資料夾 屬性。 此屬性會定義檔案要先移至 FTP 伺服器上的哪個暫存位置。 檔案在完整傳輸至暫存位置後,接著就會移至 FTP 伺服器上的相關位置。 這裡假設在 FTP 伺服器上的暫存位置與相關位置之間的檔案傳輸是以不可部分完成的方式進行。
注意
使用 ASCII 檔案暫存資料夾的副檔名僅適用于 傳送,而且不適用於 Receive。 實作這項功能的主要原因是,協力廠商應用程式在完全寫入之前不會讀取檔案。 在 BizTalk 接收檔案的情況下,配接器只會在完全讀取之後,將檔案提交至 BizTalk。
注意
在二進位模式中,如果兩者之間發生失敗,暫 存資料夾 屬性也可以用來繼續檔案傳輸。 這並不適用於 ASCII 模式。 針對 ASCII 模式, 暫存資料夾 屬性僅用於不可部分完成的檔案傳輸。