如何使用oAuth2“资源所有者凭据授予”IOS APP?

Posted

技术标签:

【中文标题】如何使用oAuth2“资源所有者凭据授予”IOS APP?【英文标题】:How to use oAuth2 "Resource owner credentials grant" IOS APP? 【发布时间】:2014-12-18 19:55:44 【问题描述】:

我正在构建我的 REST API 以与我的 ios 应用程序一起使用。我有一个小问题...

如何实现“资源所有者密码凭据授予”?我无法将客户端凭据存储在 IOS 应用程序代码中(不安全),因此我不知道如何保护 API。

所以基本上,我将使用基于 SSL 的 HTTP 基本身份验证,它会返回一个令牌。但是,这意味着任何人都可以从任何地方向我的 API 端点发出简单的发布请求,并获得 API 访问令牌。基本上我会有一个开放的 API。

你有什么推荐的?

【问题讨论】:

不要将资源所有者凭据授予用于您的特定应用程序。请参阅我对***.com/questions/26502495/…的回答 【参考方案1】:

您实际上可以使用钥匙串来存储您需要的数据.. 它是完全安全的.. 但请确保不要在其中存储密码,这对您来说会破坏交易:)

您可以按照您的建议使用用户的密码从 oAuth 请求 access_token 并将访问令牌存储到钥匙串中。它证明它对我来说是安全的。

【讨论】:

以上是关于如何使用oAuth2“资源所有者凭据授予”IOS APP?的主要内容,如果未能解决你的问题,请参考以下文章

WSO2 OAuth2:如何使用 AppAuth iOS 注销

AppAuth iOS。用户在我自己的OAuth2服务器中注册帐户后如何保存令牌信息

iOS OAuth2.0的使用

如何更安全的 OAuth2 请求?

使用 Facebook iOS SDK 的 OAuth2 授权代码

适用于 ios OAuth2、API V2 的 LinkedIn 登录。如何打开已安装的 LinkedIn 应用程序