首页 > 解决方案 > 目标 c - 使用 device_id 预授权请求正文

问题描述

由于我将 IBM Framework 升级到最新版本,因此有一个额外的 device_id。我可以知道是否可以将其从我的请求正文中删除?因为它会导致 400 错误请求。

{ "client_id": "84q113475-ffac-4a17-bf1b-be666369e097", "scope": "Authenticate", " device_id": "esBoCz0yTHEa87iQIrSdMqWJoVRsVc-XHqhf3tOCBXsTOoojcWgiASfaUeFYsxgMnTmGhW3M8EMiDM5Z7WvhpXw==", "challengeResponse": { "Authenticate": { "username": "USER1", "密码": "WuPydyRBXUQ6pbNKhhoe2EklOruf2BcB4E8=", "deviceId": "0C35D8C7-763B-45AC-B229-DF01AEAD519B" } } }

标签: iosoauth-2.0ibm-mobilefirstmobilefirst-servermfp

解决方案


当移动应用程序尝试连接旧版本的 MobileFirst Foundation Server(之前的版本8.0.2020101311)时,会发生这种情况。PH30473 STRENGTHENING PRE-AUTH ENDPOINTMobileFirst 的最新 iFix完成了一些安全性增强( )。这要求服务器和客户端应用程序处于同一级别。但是,为了确保兼容性,SDK 可以设置一个标志以继续使用旧版本的服务器如果您无法升级服务器,作为兼容性措施,您可以选择使用较8.0.2020101412旧版本的较新的 SDK(版本或更高版本) Mobile Foundation 服务器(之前的版本8.0.2020101311)通过添加以下配置:

原生安卓应用

  • 将以下行添加到您的mfpclient.properties文件中: sdkProtocolVersion=1

原生 iOS 应用

  • 将以下条目添加到您的mfpclient.plist:
    • 名称 - sdkProtocolVersion
    • 类型 - 编号
    • 价值 - 1

Cordova 应用程序

  • <widget>项目的config.xml. <mfp:SDKProtocolVersion>1</mfp:SDKProtocolVersion>

注意:推荐的方法是将您的 MobileFirst Server 版本升级到最新版本并在 MFP 控制台中添加新版本的应用程序,并且不使用上述兼容性配置。


推荐阅读