Gemeinsame Nutzung einfacher Daten

improve this page | report issue

Übersicht

Mithilfe der gemeinsamen Nutzung einfacher Daten ist es möglich, dass die Anwendungen einer Anwendungsfamilie auf einem einzelnen Gerät einfache Informationen auf sicherem Wege gemeinsam nutzen können. Dieses Feature stellt mithilfe der in den verschiedenen mobilen SDKs bereits vorhandenen nativen APIs eine einheitliche Entwickler-API bereit. Diese MobileFirst-API abstrahiert die Komplexität der verschiedenen Plattformen und erleichtert Entwicklern die schnelle Implementierung von Code für die Kommunikation zwischen Anwendungen.

Dieses Feature wird unter iOS und Android sowohl für Cordova-Anwendungen als auch für native Anwendungen unterstützt.

Nach der Aktivierung der gemeinsamen Nutzung einfacher Daten können Sie die bereitgestellten Cordova-APIs und nativen APIs nutzen, um zwischen den Anwendungen einer Anwendungsfamilie auf einem Gerät einfache Zeichenfolgetoken auszutauschen.

Fahren Sie mit folgenden Abschnitten fort:

Terminologie

MobileFirst-Anwendungsfamilie

Eine Anwendungsfamilie ist eine Möglichkeit, Anwendungen mit derselben Vertrauensebene zu einer Gruppe zusammenzufassen. Anwendungen einer Familie können untereinander sicher und geschützt Informationen austauschen.

Alle Anwendungen müssen den folgenden Anforderungen genügen, um als Teil derselben MobileFirst-Anwendungsfamilie betrachtet zu werden:

  • Sie geben im Anwendungsdeskriptor denselben Wert für den Anwendungsdeskriptor an.
    • Für iOS-Anwendungen bezieht sich diese Anforderung auf den Wert für die Zugriffsgruppenberechtigung.
    • Für Android-Anwendungen bezieht sich diese Anforderung auf den Wert für sharedUserId in der Datei AndroidManifest.xml.

    Hinweis: Unter Android muss der Name das Format x.y haben.

  • Anwendungen müssen mit derselben Unterzeichnungsidentität signiert sein. Diese Anforderung bedeutet, dass nur Anwendungen derselben Organisation dieses Feature verwenden können.
    • Für iOS-Anwendungen bezieht sich diese Anforderung auf dasselbe Anwendungs-ID-Präfix und dasselbe Bereitstellungsprofil sowie darauf, dass die Anwendung mit derselben Unterzeichnungsidentität signiert wurde.
    • Für Android-Anwendungen bedeutet diese Anforderung die Verwendung desselben Signierzertifikats und -schlüssels.

Anwendungen einer MobileFirst-Anwendungsfamilie verwenden neben den von der Mobile Foundation bereitgestellten APIs die APIs für gemeinsame Datennutzung in den jeweiligen nativen SDKs für mobile Anwendungen.

Zeichenfolgetoken

Die gemeinsame Nutzung von Zeichenfolgetoken durch Anwendungen derselben MobileFirst-Anwendungsfamilie ist jetzt über das Feature für die gemeinsame Nutzung einfacher Daten für iOS-Hybridanwendungen und native iOS-Anwendungen sowie für Android-Hybridanwendungen und native Android-Anwendungen möglich.

Zeichenfolgetoken werden als einfache Zeichenfolgen wie Kennwörter oder Cookies angesehen. Die Verwendung langer Zeichenfolgen führt zu erheblichen Leistungseinbußen.

Wenn Sie die APIs verwenden, sollten Sie für zusätzliche Sicherheit die Verschlüsselung von Token in Erwägung ziehen.

Weitere Informationen finden Sie unter JSONStore-Sicherheitsdienstprogramme.

Feature für gemeinsame Nutzung einfacher Daten aktivieren

Die folgenden Anweisungen gelten sowohl für native Apps als auch für Cordova-basierte Apps.
Öffnen Sie Ihre Anwendung in Xcode oder Android Studio und gehen Sie wie folgt vor:

iOS

  1. Fügen Sie in Xcode eine Keychain Access Group hinzu, in der alle Apps, die zur selben Anwendungsfamilie gehören sollen, einen eindeutigen Namen haben. Die berechtigte Anwendungs-ID muss für alle Anwendungen der Familie dieselbe sein.
  2. Vergewissern Sie sich, dass alle Anwendungen, die zur selben Anwendungsfamilie gehören, ein gemeinsames Anwendungs-ID-Präfix verwenden. Weitere Informationen finden Sie unter “3. Managing Multiple App ID Prefixes” in der iOS Developer Library.
  3. Speichern und signieren Sie die Anwendungen. Stellen Sie sicher, dass zum Signieren aller Anwendungen in dieser Gruppe dasselbe iOS-Zertifikat und dieselben Bereitstellungsprofile verwendet werden.
  4. Wiederholen Sie die Schritte für alle Anwendungen, die Teil einer Anwendungsfamilie sein sollen.

Jetzt können Sie die nativen APIs für die gemeinsame Nutzung einfacher Daten verwenden, um den Anwendungen einer Familie die gemeinsame Nutzung einfacher Zeichenfolgen zu ermöglichen.

Android

  1. Aktivieren Sie die Option für die gemeinsame Nutzung einfacher Daten, indem Sie in Ihrer Datei AndroidManifest.xml im Tag “manifest” den Namen der Anwendungsfamilie mit dem Element android:sharedUserId angeben. Beispiel:

    <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.myApp1"
         android:versionCode="1"
         android:versionName="1.0"
         android:sharedUserId="com.myGroup1">
    
  2. Vergewissern Sie sich, dass alle Anwendungen, die zur selben Anwendungsfamilie gehören, mit denselben Signing Credentials signiert wurden.
  3. Deinstallieren Sie alle früheren Versionen der Anwendungen, die keine sharedUserId angegeben oder eine andere sharedUserId verwendet haben.
  4. Installieren Sie die Anwendung auf dem Gerät.
  5. Wiederholen Sie die Schritte für alle Anwendungen, die Teil einer Anwendungsfamilie sein sollen.

Jetzt können Sie die bereitgestellten nativen APIs für die gemeinsame Nutzung einfacher Daten verwenden, um den Anwendungen einer Familie die gemeinsame Nutzung einfacher Zeichenfolgen zu ermöglichen.

Konzepte der API für gemeinsame Nutzung einfacher Daten

Mit den APIs für die gemeinsame Nutzung einfacher Daten können Anwendungen einer Familie Schlüssel-Wert-Paare an einer allgemeinen Position setzen oder löschen und von dieser Position abrufen. Die APIs für die gemeinsame Nutzung einfacher Daten sind für alle Plattformen ähnlich und stellen eine Abstraktionsschicht bereit, durch die die Komplexität der einzelnen APIs der nativen SDKs verborgen bleibt. Dadurch sind diese APIs einfach in der Verwendung.

Die folgenden Beispiele zeigen, wie Sie Token im gemeinsamen Speicher für Berechtigungsnachweise für verschiedene Umgebungen definieren, abrufen und löschen können.

JavaScript

WL.Client.setSharedToken({key: myName, value: myValue})
WL.Client.getSharedToken({key: myName})
WL.Client.clearSharedToken({key: myName})

Weitere Hinweise zu den Cordova-APIs finden Sie in der Beschreibung der Funktionen getSharedToken, setSharedToken und clearSharedToken in den Referenzinformationen zur API WL.Client.

Objective-C

[WLSimpleDataSharing setSharedToken: myName value: myValue];
NSString* token = [WLSimpleDataSharing getSharedToken: myName]];
[WLSimpleDataSharing clearSharedToken: myName];

Weitere Hinweise zu den Objective-C-APIs finden Sie in der Beschreibung der Klasse WLSimpleDataSharing in den API-Referenzinformationen.

Java

WLSimpleSharedData.setSharedToken(myName, myValue);
String token = WLSimpleSharedData.getSharedToken(myName);
WLSimpleSharedData.clearSharedToken(myName);

Weitere Hinweise zu den Java-APIs finden Sie in der Beschreibung der Klasse WLSimpleDataSharing in den API-Referenzinformationen.

Beschränkungen und Hinweise

Sicherheitsaspekte

Da diese Funktion den Datenzugriff für eine Gruppe von Anwendungen ermöglicht, muss das Gerät besonders sorgfältig vor dem Zugriff unbefugter Benutzer geschützt werden. Beachten Sie die folgenden Sicherheitsaspekte:

Gerätesperre

Gewährleisten Sie im Interesse einer höheren Sicherheit, dass Geräte mit einem Kennwort, einem Kenncode oder einer PIN gesichert sind, sodass das Gerät bei einem Verlust oder Diebstahl geschützt ist.

Jailbreak-Erkennung

Ziehen Sie eine Managementlösung für mobile Endgeräte in Erwägung, um die Geräte in Ihrem Unternehmen vor Jailbreaks oder Rooterkennung zu schützen.

Verschlüsselung

Erwägen Sie im Interesse einer erhöhten Sicherheit die Verschlüsselung aller Token, bevor sie freigegeben werden. Weitere Informationen finden Sie unter “JSONStore-Sicherheitsdienstprogramme”.

Größenbeschränkung

Dieses Feature ist für die gemeinsame Nutzung kleiner Zeichenfolgen, wie Kennwörter oder Cookies, bestimmt. Es wäre unklug, dieses Feature zu missbrauchen, denn der Versuch, große Datenwerte zu ver- und entschlüsseln oder zu lesen und zu schreiben, beeinträchtigt die Leistung.

Wartungsherausforderungen

Android-Entwickler müssen sich darüber im Klaren sein, dass die Aktivierung dieses Features oder das Ändern der Anwendungsfamilie dazu führt, dass für vorhandene Anwendungen, die unter einem anderen Familiennamen installiert wurden, kein Upgrade mehr durchgeführt werden kann. Android erfordert aus Sicherheitsgründen, dass Anwendungen deinstalliert werden müssen, bevor sie unter einem neuen Familiennamen installiert werden können.

Inclusive terminology note: The Mobile First Platform team is making changes to support the IBM® initiative to replace racially biased and other discriminatory language in our code and content with more inclusive language. While IBM values the use of inclusive language, terms that are outside of IBM's direct influence are sometimes required for the sake of maintaining user understanding. As other industry leaders join IBM in embracing the use of inclusive language, IBM will continue to update the documentation to reflect those changes.
Last modified on November 15, 2017