- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我们正在 Worklight 上开发一个混合应用程序,我们需要实现应用程序的真实性。我们将 Worklight Enterprise 版本 6.2.0.1 与 IBM 应用程序中心一起使用。但是,当我们在 Android 上启动应用程序时,我们在服务器日志中看到以下错误(iOS 也一样,但会提供 Android 日志)。
[1/19/15 15:25:05:388 EST] 00000254 WLNewAuthenti E com.worklight.core.auth.ext.appauth.WLNewAuthenticityScheme isInvalidAndroidParams FWLSE0260E:Android 真实性检查的 packageName 缺失或为空,无法测试真实性。如果 App Authentication 在 Worklight Console 中未设置为“已禁用”或“已启用,服务”,请求将失败。 [项目移动应用][1/19/15 15:25:05:388 EST] 00000254 WLNewAuthenti E com.worklight.core.auth.ext.appauth.WLNewAuthenticityScheme isInvalidAndroidParams FWLSE0260E:用于 android 真实性检查的 publicsigningkey 缺失或为空,无法测试真实性。如果 App Authentication 在 Worklight Console 中未设置为“已禁用”或“已启用,服务”,请求将失败。 [手机银行项目]。
authenticationConfig.xml 的安全测试是:
<securityTests>
<mobileSecurityTest name="MobileAppTestMobile">
<testAppAuthenticity/>
<testDeviceId provisioningType="auto" />
<testUser realm="MobileAppRealm" />
<testDirectUpdate mode="perSession" />
</mobileSecurityTest>
<webSecurityTest name="MobileAppTest">
<testUser realm="MobileAppRealm" />
</webSecurityTest>
<customSecurityTest name="SubscribeServlet">
<test realm="SubscribeServlet" isInternalUserID="true"/>
</customSecurityTest>
</securityTests>
应用程序描述符.xml:
<iphone bundleId="ca.company.MobileApp" securityTest="MobileAppTestMobile" version="1.0">
<worklightSettings include="false"/>
<security>
<encryptWebResources enabled="true"/>
<testWebResourcesChecksum enabled="true" ignoreFileExtensions="png, jpg, jpeg, gif, mp4, mp3"/>
</security>
</iphone>
<android securityTest="MobileAppTestMobile" version="1.0">
<worklightSettings include="false"/>
<security>
<encryptWebResources enabled="true"/>
<testWebResourcesChecksum enabled="true" ignoreFileExtensions="png, jpg, jpeg, gif, mp4, mp3"/>
<publicSigningKey>"We have added our public signing key here by extracting it from our keystore file"</publicSigningKey>
</security>
</android>
更新 WAR 文件后,我们从头开始部署了所有应用程序。worklight 控制台显示真实性的三个值“Disable - Enabled,serving - Enabled,Blocking”
当我们放置“启用,阻止”或“启用,服务”时,我们会在帖子顶部共享的服务器上获取错误日志。在应用程序屏幕上,我们收到错误消息“处理来自应用程序的请求时遇到错误”。
请指教。谢谢
最佳答案
问题已经解决。
解决方法:
1- 我们将 authenticationConfig.xml 中的 MobileSecurityTest 更改为 customSecurityTest,如下所示,并重新部署了 WAR 文件:
<customSecurityTest name="MobileSecurityTest">
<test realm="wl_antiXSRFRealm" step="1"/>
<test realm="wl_authenticityRealm" step="1"/>
<test realm="wl_remoteDisableRealm" step="1"/>
<test realm="wl_directUpdateRealm" mode="perSession" step="1"/>
<test realm="wl_anonymousUserRealm" isInternalUserID="true" step="1"/>
<test realm="wl_deviceNoProvisioningRealm" isInternalDeviceID="true" step="2"/>
</customSecurityTest>
2- 在 application-descriptor.xml 中:
对于 android,我使用了 Idan 所说的添加 <packageName>
属性(property)。
<android securityTest="MobileSecurityTest" version="1.0">
<worklightSettings include="false"/>
<security>
<encryptWebResources enabled="true"/>
<testWebResourcesChecksum enabled="true" ignoreFileExtensions="png, jpg, jpeg, gif, mp4, mp3"/>
<publicSigningKey>"Our public signing Key placed here"</publicSigningKey>
<packageName>ca.company.MobileTest</packageName>
</security>
</android>
对于 iOS,问题出在 applicationId,我们认为 applicationId 值是 bundleId 的最后一部分,
例如:如果 bundleId 是“com.company.Myapp”,这意味着 applicaiotnId 是“Myapp”,这是不正确的。
这是不正确的定义:
<iphone bundleId="ca.company.MobileTestiPhone" applicationId="MobileTestiPhone" securityTest="MobileSecurityTest" version="1.0" >
applicationId 是 worklight.plist 文件中的值,该文件位于 iPhone 或 iPad native 文件夹中,此文件是在构建后生成的。对于我们的应用程序,它具有完全不同的值(value)。
正确的是:
<iphone bundleId="ca.company.MobileTestiPhone" applicationId="MobileTest" securityTest="MobileSecurityTest" version="1.0" >
这就是为什么当我们将应用程序真实性值设置为“启用,阻止”时,该应用程序被我们的 WL 服务器阻止的原因。
感谢@Idan 的帮助。
关于ibm-mobilefirst - 工作灯真实性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28033111/
我浏览了Truthiness in Python并理解 [] 和类似的空对象在 Python 中被解释为 False。 但是当我在 REPL 中输入以下内容时,它返回 False: >>> [] ==
我是 JavaScript 的新手,我正在尝试从 Internet 资源中学习它。虽然我知道会有很多 cr*p Material ,但大多数人似乎都同意的一件事是 JS 中事物的真实性(只是举个例子
Android/Iphone 应用程序将从服务器访问应用程序数据。[Django-Python] 如何确保与移动应用程序的通信安全? 期望:对密码等敏感信息足够安全,除了暴力破解之外,没有直接的解密方
我目前有一个应用程序,它使用常规 Devise 身份验证进行登录和注销,但使用 Devise 的 token_authenticatable 模块创建一个唯一 token ,该 token 在从书签提
我正在使用 rails 4.0.3 和 passenger和 authlogic构建 Web 应用程序并在用户登录时遇到问题,但在创建新的 UserSession 时使用以前的用户真实性 token
有谁知道在 Ruby on Rails 3 中如何管理真实性 token ?在展示如何使用 HTML5 数据属性的所有不显眼的 Javascript Ruby on Rails 3 文章中,我在任何地
Rails 中的真实性 token 是什么? 最佳答案 会发生什么 当用户查看表单以创建、更新或销毁资源时,Rails 应用会创建一个随机的 authenticity_token,将此 token 存
当我遇到一些真实性 token 问题时,我正在开发一个新的 Rails 4 应用程序(在 Ruby 2.0.0-p0 上)。 在编写响应 json 的 Controller 时(使用 respond_
我正在将devise(最新版本-3.2.0)与rails(最新版本-4.0.1)一起使用 我正在做简单的身份验证(没有ajax或api),并且CSRF身份验证 token 出现错误。检查下面的POST
我正在尝试在 Rails 中执行跨平台请求。 我的 html 代码是:- Title
我正在使用 Sinatra 框架在 ruby 中构建一个简单的应用程序。它主要基于“获取”——大多数请求将用于列出数据。但是,应用程序中有几个关键屏幕将收集用户输入。我想确保该应用尽可能安全,目前
我正在尝试使用 uploadify ( http://www.uploadify.com ) 在 rails 3 应用程序中获取文件上传进度条,但我被困在真实性 token 上。我当前的uploadi
我正在尝试对一个简单的 Rails 应用程序执行 JMeter 后期操作,但我得到以下回复: 在 2015-05-04 12:40:15 -0700 开始为 127.0.0.1 发布“/flights
我的问题是关于加强 .NET 程序集之间的安全性。这是场景: Foundation 程序集部署在服务器上。 应用程序中附带了一系列插件程序集。 插件使用Foundation的功能。 由于Foundat
在 rails 4 应用程序的同一页面上,我有一个 在头部: 和下面的 body : js 调用需要 csrf token 。但是为什么form token与csrf token不同呢?表
在我们的 Rails 应用程序中,用户经常将多个浏览器选项卡一次打开数小时或数天。当在这些选项卡之一中,用户注销然后重新登录(或 session 过期并创建新 session )时,就会出现问题。 这
我有一个使用 Windows Phone 8 SDK 的 Phonegap 2.3.0 通过 iframe 加载的 Web 应用程序。通过 iframe 加载它的问题是,当我发送 $.post() 请
我的 Rails 应用程序订阅了一个外部系统 POST 通知(名为 Orion context broker)。我管理发送 json 数据和处理响应(ruby->Orion)。 但是当收到通知请求时,
我正试图在 Rails 中获得完整的页面缓存,但我在 CSRF 方面遇到了很大的障碍——或者可能只是我对它的理解。我目前有 form_authenticity_token存储在 cookie 中的字符
我正在开发一个简单的网站,让管理员提出问题并让用户解决问题。我在管理部分使用 ActiveAdmin,在用户解决部分使用简单的 AJAX 调用。起初尝试通过 ActiveAdmin::Devise 登
我是一名优秀的程序员,十分优秀!