2016-07-04 17 views
0

Hi Ich versuche, eine Verbindung zum Produktionsserver und App Authentizität (native Android App). Aber ich bekomme folgenden Fehler "App Echtheitssicherheitsprüfung fehlgeschlagen".Versuchen, App Authentizität und während client.connect() bekommen "App Authentizität Sicherheitsprüfung fehlgeschlagen"

Was ich auf MFP-Projektebene mache.

In authconfig xml.

<customSecurityTest name="AuthSecurityTest"> 
     <test realm="wl_antiXSRFRealm" step="1" /> 
     <test realm="wl_authenticityRealm" step="1" /> 
     <test realm="wl_remoteDisableRealm" step="1" /> 
     <test isInternalUserID="true" realm="AuthRealm" step="1" /> 
     <test realm="wl_deviceNoProvisioningRealm" isInternalDeviceID="true" 
      step="2" /> 
    </customSecurityTest> 


<realm loginModule="AuthLoginModule" name="AuthRealm"> 
     <className>com.worklight.integration.auth.AdapterAuthenticator</className> 
     <parameter name="login-function" value="AuthAdapter.onAuthRequired" /> 
     <parameter name="logout-function" value="AuthAdapter.onLogout" /> 
    </realm> 

<loginModule name="AuthLoginModule"> 
     <className>com.worklight.core.auth.ext.NonValidatingLoginModule</className> 
    </loginModule> 

Mein Anwendungsdeskriptordatei:

<nativeAndroidApp xmlns="http://www.worklight.com/native-android-descriptor" 
id="MFP_Android" 
platformVersion="7.1.0.00.20160401-2103" securityTest="AuthSecurityTest" version="1.0"> 
    <displayName>MFP_Android</displayName> 
    <description>MFP_Android</description> 
    <accessTokenExpiration>3600</accessTokenExpiration> 
    <publicSigningKey>MIIBHSAKJHDFKJHFKHDFKJHDKJHDFSKJHFDSKJHFDSKJDFHKJDFHDFHJDSKDFSHKDJFSHKJFDHSKJDFSHKJDFSHKJDFSHKJDFHSKJDFHlkasalJAscnmxzcncxmnzksjdadskjdsjsdjskjdksjdakjdssdjksdaj</publicSigningKey> 
    <packageName>com.mfp</packageName> 
    <targetCategory>UNDEFINED</targetCategory> 
    <licenseAppType>APPLICATION</licenseAppType> 
</nativeAndroidApp> 

ich die Herausforderung Hander auf connect aufrufen.

AndroidChallengeHandler challengeHandler = new AndroidChallengeHandler("AuthRealm"); 
WLClient client; 
client.registerChallengeHandler(challengeHandler); 
client.connect(); 

Ich erhalte Antwort als

/*-secure- {"reason":"App authenticity security check failed"}*/ 

y würde ich eine solche Antwort.

Antwort

1
  1. Ich finde es sehr seltsam, dass Ihr Paket Name ist wirklich „com.mfp“, wie er in der XML-Deskriptordatei gesehen: <packageName>com.mfp</packageName>.
  2. Sind Sie absolut sicher, dass dies Ihr Paketname ist (den Sie in der Datei AndroidManifest.xml Ihres nativen Android-Projekts finden)? Eine andere Möglichkeit ist, dass der in der XML-Deskriptordatei verwendete Schlüssel nicht mit dem Schlüssel übereinstimmt, mit dem die .apk-Datei signiert wurde.

  3. Schließlich könnte dies an den Schritten liegen, die Sie in der Authentifizierungskonfigurations-XML-Datei definiert haben. Versuchen Sie, "wl_remoteDisableRealm" zu "Schritt 2" zu ändern. Aufgrund dieser Änderung müssen Sie die aktualisierte WAR-Datei erneut auf dem Anwendungsserver bereitstellen.

+0

Ich gab einen Dummy-Paketnamen, da ich das tatsächliche hier nicht einfügen kann. Der Paketname, den ich in verwende, stimmt mit meinem Android-Manifest-Paketnamen überein. – Bender

+0

Ich habe die Antwort mit zwei weiteren Möglichkeiten aktualisiert. –

+0

ok Idan, ich muss den letzten Punkt versuchen, den du erwähnt hast. – Bender