Api iOS和Android应用程序使用什么CORS策略?

Api iOS和Android应用程序使用什么CORS策略?,api,rest,cors,django-rest-framework,django-cors-headers,Api,Rest,Cors,Django Rest Framework,Django Cors Headers,我正在构建一个用于iOS/Android应用程序的API。 该应用程序使用JSON Web令牌对用户进行身份验证。 我在尝试从本机应用程序与API对话时遇到了CORS问题。 因此,我为所有来源添加了CORS头(仅在以/api/开头的URL上)。 它现在运行良好,但我想知道我所做的是否不是一个潜在的漏洞 我应该允许所有的起源吗?如果本机应用程序将请求API,有没有办法提前知道源主机 我很困惑。 提前感谢您的帮助。如果用户拥有令牌,则不需要CORS保护。每次将令牌发送到服务器时,令牌与使用用户名和密

我正在构建一个用于iOS/Android应用程序的API。 该应用程序使用JSON Web令牌对用户进行身份验证。 我在尝试从本机应用程序与API对话时遇到了CORS问题。 因此,我为所有来源添加了CORS头(仅在以
/api/
开头的URL上)。 它现在运行良好,但我想知道我所做的是否不是一个潜在的漏洞

我应该允许所有的起源吗?如果本机应用程序将请求API,有没有办法提前知道源主机

我很困惑。
提前感谢您的帮助。

如果用户拥有令牌,则不需要CORS保护。每次将令牌发送到服务器时,令牌与使用用户名和密码登录的用户完全相同。CORS所保护的威胁模型是一个恶意域/站点,而不是您自己的站点,它使用您域的cookie(包括会话id)向您的服务器发出AJAX请求

如果一个恶意域或实体拥有您的用户令牌,那么您的用户身份是如此的模糊,以至于您尝试执行何种CORS保护并不重要。恶意域具有与您用户的用户名和密码相同的名称。他们完全被破坏,直到你使他们的令牌失效


因此,当恶意实体完全破坏用户帐户时,不要担心请求来自何处(CORS)。只要保护令牌,就好像它是女王的珠宝一样。通过SSL发送并安全存储。如果恶意实体获得了Fort Knox的密钥,您的问题将比请求的来源更大。

不要害怕让Cors来源:*因为如果您限制服务器访问,您可能会使您的业务处于不稳定的状况,因此请努力使用令牌

但以我的方式,我研究了网络,发现任何加密有时都会作为第三方工具进行解密,然后说哇

终于在20天内完成了我自己的加密,每天都让解密变得更加困难

最终答案:了解加密和解密,然后按照您想要的方式使用您的函数,而每个人都不知道

如果您希望获得最大的安全性,请不要将时间浪费在SSL或国际哈希算法上。之后,您可以随意将加密与国际哈希算法混合使用

从简单的字符编码开始,然后不断更新,一次更新一次,你可以在你制作的每个应用程序中使用

希望能有所帮助