簡體   English   中英

Web服務器到C#應用程序的身份驗證技術

[英]Techniques to Authenticate Web Server to C# Application

我有一個C#程序,該程序從服務器中獲取XML以顯示新聞,顯示更新警報以及控制程序行為的一部分。 我可以使用哪些技術來確保程序連接到REAL服務器?

通常,我將SOAP Web服務用於類似的任務。 為了確保只有允許的客戶端可以連接,我使用:

  • 確保僅允許HTTPS連接。
  • 將API密鑰( string )作為所有Web服務方法的附加參數。

通過使用API​​密鑰,服務器可以檢查允許的API密鑰列表(例如,存儲在數據庫中或僅存儲為常量字符串),並使用無效的API密鑰拒絕不允許的客戶端請求。

一個例子是:

public class MyWebService : 
    WebService
{
    [WebMethod]
    public string GetXml(string apiKey) 
    { 
        if( isApiKeyValid(apiKey) )
        {
            var doc = new XmlDocument();

            // TODO: generate XML document.

            return doc.OuterXml;
        }
        else
        {
            throw new Exception("Invalid API key.");
        }
    }
}

isApiKeyValid函數將包含檢查所傳遞的API密鑰是否有效的邏輯。

暫無
暫無

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

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