aerogear-ios-oauth2
基于 aerogear-ios-http 的 OAuth2 客户端。
项目信息 | |
---|---|
许可证 | Apache 许可证第 2 版 |
构建 | CocoaPods |
语言 | Swift 4 |
文档 | http://aerogear.org/ios/ |
问题追踪 | https://issues.jboss.org/browse/AGIOS |
邮件列表 | aerogear-users (订阅) |
aerogear-dev (订阅) |
目录
特性
- 多个 OAuth2 账户的账户管理器,
- 请求访问和刷新令牌,
- 通过安全的外部浏览器和 URI 规范授予访问权限并在应用程序中重新输入,
- (隐式或显式) 刷新令牌,
- 撤销令牌,
- 永久安全存储,
- 可适配OAuth2特定提供商。现有扩展:Google、Facebook、Keycloak
- OpenID Connect登录
安装
CocoaPods
在您的 Podfile
中添加
pod 'AeroGearOAuth2'
然后
pod install
来安装您的依赖项
使用方法
类似于Facebook的预定义配置的GET授权
let facebookConfig = FacebookConfig(
clientId: "YYY",
clientSecret: "XXX",
scopes:["photo_upload, publish_actions"]
)
let oauth2Module = AccountManager.addFacebookAccount(config: facebookConfig)
let http = Http()
http.authzModule = oauth2Module
http.request(method: .get, path: "/get", completionHandler: {(response, error) in
// handle response
})
与Keycloak的OpenID Connect
let keycloakConfig = KeycloakConfig(
clientId: "sharedshoot-third-party",
host: "https://:8080",
realm: "shoot-realm",
isOpenIDConnect: true
)
let oauth2Module = AccountManager.addKeycloakAccount(config: keycloakConfig)
let http = Http()
http.authzModule = oauth2Module
oauth2Module.login {(accessToken: AnyObject?, claims: OpenIdClaim?, error: NSError?) in // [1]
// Do your own stuff here
}
文档
有关更多详情,请参阅我们的文档。
演示应用
查看我们的演示应用
开发
如果你想帮助开发AeroGear,可以加入我们的开发者邮件列表,加入Freenode上的#aerogear,或在Twitter @aerogears上联系我们。
myös花费一些时间,浏览贡献指南
有什么问题吗?
加入我们的用户邮件列表,有任何问题或帮助!我们真的希望你喜欢用AeroGear进行应用开发!
发现了一个错误?
如果你发现了一个错误,请在我们Jira上为我们创建一个工单,并提供一些复现的步骤。