所以我有一个应用程序。
移动或 JavaScript。任何。 Windows、苹果、安卓。我有一个日志记录 API。它有一个 API key 。该应用程序需要在记录任何内容之前提供该 API key 。我需要记录的事情之一是登录失败!出于这个原因,我必须在用户登录之前拥有该 API key 。我将它存储在哪里?
我无法将 API key 保留在应用程序中,例如在设置文件或源代码中,因为这些都对用户可用。我无法使用 OAuth2 为它调用服务器,因为用户尚未通过身份验证,所以我无法进行哈希处理。我无法将其存储在钥匙串(keychain)中,因为 API key 在下载时仍将包含在应用程序包中,以便将其存储在钥匙串(keychain)中。
那么,我应该把它放在哪里呢?
最佳答案
您不需要对用户进行身份验证,以便客户端向服务器发出安全请求以获取通用 API key 。执行此操作的最简单(不安全)方法是在您的服务器中构建一个简单的 GET restful 端点(例如:http://www.sempf-overflow.com/logging/key),其响应中唯一的内容就是您的 API key 。一旦你有了它,你就可以考虑使其安全的方法。
您可以阅读以下内容以获取更多信息以及不同解决方案的权衡:
关于javascript - 您如何获得 API Key 以访问服务预授权?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35053023/