我正在使用IBM MobileFirst studio插件7.0,并按照此处的文档:Link to documentation了解如何配置直接更新。我试图理解这些部分是如何协同工作的,但我无法理解这个概念。
使用随教程提供的代码示例,我看到“mobileSecurityTest”被注释掉了,而“customSecurityTest”元素也被注释掉了。
我注意到的另一件事是,在application-descriptor.xml中,对添加的环境没有安全性测试?
感谢任何建议。
答案 0 :(得分:2)
在我的应用程序描述符中,我有一个带有customSecurityTest的iPhone应用程序:
<?php
include('db_connect.php');
session_start();
if(isset($_SESSION['userSession'])!=""){
$user_id = $_SESSION['userSession'];
$query = "select * from wash WHERE clientid='$user_id'";
$res = mysql_query($query) or die(mysql_error());
$events = array();
while ($row = mysql_fetch_assoc($res)) {
$wid = $row['wid'];
$start = $row['wash_date'];
if($row['wstatus'] == 0){
$title = "Wash Scheduled";
$backgroundColor = "#f39c12";
}
else if($row['wstatus'] == 1){
$title = "Wash Done";
$backgroundColor = "#00a65a";
}
$eventsArray['wid'] = $wid;
$eventsArray['title'] = $title;
$eventsArray['start'] = $start;
$eventsArray['backgroundColor'] = $backgroundColor;
$events[] = $eventsArray;
}
echo json_encode($events);
}
?>
在我的身份验证配置中,我有:
<iphone bundleId="com.PhoneUp" version="1.0" securityTest="customSecurityTests">
<worklightSettings include="false"/>
<security>
<encryptWebResources enabled="false"/>
<testWebResourcesChecksum enabled="false" ignoreFileExtensions="png, jpg, jpeg, gif, mp4, mp3"/>
</security>
</iphone>
现在,保护我的应用程序的安全测试在我的authentication-config(服务器上的安全文件)中映射到安全性测试
不需要在应用程序上放置安全测试来触发直接更新 您可以通过尝试&#34;登录&#34;的用户触发直接更新。到那个领域。
<customSecurityTest name="customSecurityTests">
<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>
直接更新是一个领域,您可以阅读有关here的更多信息。
来自here的示例项目没有注释安全测试,也没有保护应用程序的安全测试。您将不得不取消注释并在应用程序描述符中添加安全性测试,如第一个答案中所述。