4D für iOS bietet eine Reihe von Funktionen und Konzepten, die Ihnen den Einstieg in Ihre erste mobile Anwendung erleichtern. Neben dem Schritt-für-Schritt-Tutorial werden wir in Blogbeiträgen Tipps geben, um den Lernprozess zu beschleunigen. In diesem Beitrag gehen wir auf ein wichtiges Konzept in 4D für iOS ein: Mobile Session Management.
Mobile Sitzungsverwaltung
Mobile Session Management ermöglicht es Ihnen, den Überblick über die Nutzer nach ihrer ersten Anfrage zu behalten. Kurz gesagt: Sie können jeden Benutzer identifizieren und den Zugriff auf Ihre App-Daten autorisieren oder sperren, indem Sie den Status der Benutzeranfrage in “ akzeptiert“ oder „ ausstehend“ ändern.
Als 4D Entwickler können Sessions eine große Hilfe bei der Sicherung Ihrer Serverdaten sein, denn sie ermöglichen es Ihnen, den Benutzer zu authentifizieren, der über eine mobile App auf Ihren 4D Server zugreift.
Ein weiterer Anwendungsfall: Als Server-Administrator können Sie mit der Sitzungsverwaltung die Benutzer festlegen, die sich mit Ihrem 4D Server verbinden dürfen, so dass Sie den Zugriff auf diejenigen beschränken können, die eine Zugriffsberechtigung haben.
Sitzungsverwaltung in 4D für iOS
In 4D für iOS können Sie über eine Mobile User JSON Datei in Echtzeit feststellen, wer versucht, auf die Daten Ihrer App zuzugreifen. Sie enthält strukturierte Informationen wie die E-Mail eines Benutzers, die App-ID und die Geräte-ID für jede App:
{ "application":{ "id":"com.contactApp.Contact", "name":"Contact", "version":"1.0.0" }, "team":{ "id":"DAVAZDX8W5" }, "language":{ "id":"en_US", "code":"en", "region":"US" }, "email":"david@4D.com", "device":{ "description":"iPhone X", "version":"11.3", "id":"0DC5132E-1EF4-407C-A832-5FE33D818AF3", "simulator":true }, "send":"link", "session":{ "id":"7023d9205074199d1c16fc00d24354e778137675", "ip":"::ffff:192.168.5.4" }, "status":"accepted", "token":"eyJhcHBOYW1lSUQiOiJjb20uY29udGFjdEFwcC5Db250YWN0IiwiaWQiOiI3MDIzZDkyMDUwNzQxOTlkMWMxNmZjMDBkMjQzNTRlNzc4MTM3Njc1IiwidGVhbUlEIjoiVVRUN1ZEWDhXNSJ9" }
Wenn ein Benutzer Ihre App zum ersten Mal startet, wird eine Mobile User-Datei erstellt und neben der aktuellen 4DD-Datei im Ordner MobileApps gespeichert. Dieser Ordner enthält alle Ihre Mobile User-Dateien, die nach App-Ordnern geordnet und gruppiert sind.
Um den Zugriff Ihrer Benutzer zu verwalten, können Sie den Status jeder Mobile User-Datei manuell ändern oder noch besser: Ihre eigene Schnittstelle erstellen!
Authentifizierungsmethode
Die Datenbankmethode On Mobile App Authentication wird aufgerufen, um den Zugriff programmatisch zu gewähren oder zu sperren, wenn ein Benutzer einen ausstehenden Status hat und versucht, auf den Server zuzugreifen – zum Beispiel, um Daten nachzuladen. Sie können diese Authentifizierungsmethode direkt im Projekteditor im Bereich Veröffentlichung erstellen und bearbeiten.
Wenn Sie auf die Schaltfläche Erstellen... klicken, wird eine Vorlage erstellt, die sofort verwendet werden kann:
C_OBJECT($0;$response)
C_OBJECT($1;$request)
$request :=$1 // Informations provided by mobile application
$response :=New object // Informations returned to mobile application
// Check user email
If ($request.email=Null)
// No email means Guest mode - Allow connection
$response .success:=True
Else
// Authenticated mode - Allow or not the connection according to email or other device property
$response .success:=True
End if
// Optional message to display on mobile App.
If ($response.success)
$response.statusText:="Sie sind erfolgreich authentifiziert"
Else
$response .statusText:="Sie sind leider nicht berechtigt, diese Anwendung zu nutzen."
End if
$0:=$response
Wenn die Option „Anmeldung erforderlich“ aktiviert ist, wird beim Start der Anwendung ein Anmeldeformular angezeigt. Sie können die Option „Login erforderlich“ auch deaktivieren, damit Ihre App im „Gast“-Modus verwendet werden kann.
Da 4D für iOS Apps mit eingebetteten Daten installiert werden, können Gastbenutzer die ursprünglichen Daten sehen. In diesem Fall können Sie den Zugriff nur für das Nachladen von Daten in Ihrer 4D for iOS App zulassen oder sperren.
Betrachten wir nun die 4D for iOS Benutzererfahrung für den Status „akzeptiert“ und „ausstehend“.
Akzeptierter Status
Wenn bei einem akzeptierten Status eine Anmeldung erforderlich ist:
- Der Benutzer gibt seine E-Mail ein
- Es wird eine Benachrichtigung angezeigt, dass die Authentifizierung erfolgt ist
- Er kann Daten aus dem Einstellungsbildschirm neu laden.
Ausstehender Status
Wenn eine Anmeldung mit dem Status „Ausstehend“ erforderlich ist:
- Der Benutzer gibt seine E-Mail-Adresse ein
- Es wird eine Benachrichtigung angezeigt, um ihn darüber zu informieren, dass er nicht berechtigt ist, die App zu benutzen.
- Wenn ein Benutzer bereits angemeldet ist und sein Status in „Ausstehend“ geändert wird, kann er die Daten nicht neu laden und wird zum Anmeldeformular weitergeleitet.
Um Ihnen das Leben ein wenig zu erleichtern, arbeiten wir daran, Ihnen eine gebrauchsfertige Komponente zur Verfügung zu stellen, die Sie beim Mobile Session Management unterstützt. Bleiben Sie dran!