3 votes

Protection des bases de données par mot de passe applications mobiles iPhone/Android

Je suis nouveau sur la scène du développement d'applications mobiles en ce qui concerne la connexion à une base de données sur un serveur externe.

Comment fonctionne-t-il exactement en ce qui concerne le stockage et l'exécution des données relatives à l'utilisateur et au mot de passe ? J'ai un parallèle à faire avec le fonctionnement des langages web dynamiques comme php/asp. Lorsque le fichier contenant le nom d'utilisateur et le mot de passe de la base de données est stocké et exécuté sur le serveur web.

Est-ce la même chose pour les applications ? Quelqu'un aurait-il un lien vers un article à ce sujet ? De préférence, comment cela fonctionne à la fois pour iPhone et Android.

Salutations

1voto

Nick Bull Points 3506

J'utiliserais pour cela quelque chose comme les webservices reposants (restful webservices).

Votre serveur web contiendra (par exemple) php, puis votre application fera une demande à ce serveur (comme pour une page web). Celui-ci accèdera alors à la base de données et lira et écrira depuis/vers la base de données. Le nom d'utilisateur et le mot de passe de votre base de données seront sécurisés sur votre serveur dans le code php.

Si vous avez des noms d'utilisateur et des mots de passe individuels, vous devrez prévoir un moyen pour eux de se "connecter" à votre serveur. Pour cela, vous pouvez avoir un service web qui prend le nom d'utilisateur et le mot de passe, les valide et renvoie un jeton. Ce jeton est stocké sur votre appareil et est ensuite inclus dans chaque requête que vous faites à votre serveur et est ensuite validé à chaque requête.

Exemple... http://myserver.com/login.php - votre application le demande et envoie le nom d'utilisateur et le mot de passe dans la requête post. login.php prend le nom d'utilisateur et le mot de passe des paramètres passés et les compare à votre base de données de noms d'utilisateur et de mots de passe. S'ils sont validés, le php renvoie un jeton qui est ensuite renvoyé à l'application qui l'appelle.

http://myserver.com/getData.php - votre application le demande et envoie tous les paramètres nécessaires à la requête ainsi que le jeton.

Sur le serveur, le code php prend le jeton transmis et vérifie qu'il est toujours valide. Si c'est le cas, il exécute la requête sur la base de données avec les paramètres fournis, en utilisant une connexion qui se trouve uniquement dans votre code php, et renvoie les données que votre application affiche ensuite.

Cela fonctionnerait pour n'importe quel appareil, et serait également utilisable avec un client de bureau si vous vouliez l'écrire à l'avenir.

Ce que vous pourriez vouloir rechercher.... PHP (ou ASP.net ou tout autre langage avec lequel vous vous sentez à l'aise) JSON (pour le transfert de données vers/depuis le serveur) Injection SQL et techniques de sécurité Webservices RESTFUL (BEAUCOUP plus facile que SOAP)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X