簡體   English   中英

如何在 .Net 上隱藏外部 API 令牌

[英]How to hide external API token at .Net

我正在開發一個 .net 5 web api 項目。 我需要使用外部 API(rapidapi.com 等)。 這些網站給了我一個apitoken。 我知道我應該隱藏它,所以 github 上沒有人會看到它。

但我也應該將我的 apikey 發送給我的老師,以便他可以訪問,或者他可以使用他自己的 apikey 訪問。

1.我應該把它存放在哪里? 2.我應該如何存儲它? 3.我怎么稱呼它?

我知道如何在 JS 中做到這一點,(很容易,創建 .env 文件,並將其命名為 einvironmet.apikey ),但在 .net 中不知道。 我需要一個像js這樣的簡單解決方案

編輯:我找到了解決方案。 您可以像這樣在 appsettings.json 添加一個部分

"API_KEY": "blablabla"

然后在您的控制器私有只讀 IConfiguration _configuration 中使用它;

為此創建ctor

public CurrencyCalculatorAPI(IConfiguration configuration)
        {
            _configuration = configuration;
        }

然后像這樣使用你的apikey

var apiKey = _configuration.GetValue("API_KEY");

你可以在任何你想要的地方使用它

您應該使用Microsoft 所述的“用戶機密”。

在 Visual Studio 中非常簡單,您只需右鍵單擊您的項目並選擇“管理用戶機密”。 這將在此位置創建一個文件: %APPDATA%\Microsoft\UserSecrets\<user_secrets_id>\secrets.json

這個文件在你的項目之外,所以它永遠不會成為你在 Github 中的一部分。

暫無
暫無

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

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