0

我正在尝试做的事情:创建受保护的 Kitura 端点并使用 App ID 从 iOS 应用程序访问它。

我设法在 Kitura 服务器上配置了 App ID,以便我可以登录并成功访问受保护的端点。

我可以使用与 Kitura 服务器相同的 TenantId 登录 iOS 演示应用程序并获取令牌。也就是说,我可以成功登录,但是当我使用原始身份验证令牌时,我无法从 iOS 应用程序访问服务器上受保护的端点。

我试过,使用邮递员将标题设置为:

授权 = [sessionToken]

我努力了:

授权 = 承载 [sessionToken]

获得令牌后,我已在演示应用程序中尝试过此操作:

BMSClient.sharedInstance.initialize(bluemixRegion: AppID.REGION_UK)
BMSClient.sharedInstance.authorizationManager = AppIDAuthorizationManager(appid:AppID.sharedInstance)
var request:Request =  Request(url: "<your protected resource url>")
request.send(completionHandler: {(response:Response?, error:Error?) in
    //code handling the response here
})

希望也许我在邮递员中设置了错误的令牌,它会做正确的请求。

但无论我做什么,每次我从 iOS 应用程序请求受保护的 API 时,我都会得到登录 HTML 作为响应。

我错过了什么?为什么我无法使用 iOS 应用会话令牌访问私有端点?

4

1 回答 1

0

不幸的是,IBM Cloud App ID 服务的当前版本的 Server Swift SDK 不支持 API 策略。这意味着您无法保护单个 REST API。您只能保护 Web 应用程序。

于 2018-01-09T09:21:34.830 回答