Précédent   Forum du club des développeurs et IT Pro > Java > Développement Web en Java > Applets
Applets Vos questions sur les Applets
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 05/07/2012, 15h13   #1
mathiou49
Invité régulier
 
Homme
Inscription : avril 2012
Messages : 12
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Secteur : Enseignement

Informations forums :
Inscription : avril 2012
Messages : 12
Points : 5
Points : 5
Par défaut Accéder à la racine du serveur via l'applet

Bonjour à tous,

Est-il possible pour une applet d'accéder à la racine d'un serveur Apache ?
Je m'explique. Le dossier racine par défaut d'un site web est /www. Néanmoins j'aimerais, pour des raisons de sécurité notamment, accéder au répertoire /data, par exemple, pour récupérer des images et autres données textes.

Voici donc l'arborescence :
/ <-- racine du serveur telle qu'on peut le voir avec un FTP
/data
/www

Pour l'instant je parviens très bien à accéder aux images quand mon répertoire /data se trouve dans /www/data. Mais je ne parviens pas à accéder aux données en dehors du répertoire /www.
Y a t-il une solution ?

Peut-on contourner le problème en utilisant un 2nd serveur indépendant du 1er pour accéder aux données sécurisées si les applets sont sur ce 2nd serveur ? Ou peut-on contourner le problème avec du code PHP ?

Merci d'avance pour vos lanternes !

PS : il est impératif pour moi d'utiliser une applet et non un servlet ou JWS.
mathiou49 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/07/2012, 22h45   #2
Uther
Expert Confirmé Sénior
 
Avatar de Uther
 
Homme
Inscription : avril 2002
Messages : 2 688
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : avril 2002
Messages : 2 688
Points : 5 145
Points : 5 145
Par contre, je pense que tu dois pouvoir accéder à ton répertoire data en faisant sur ton serveur un lien symbolique de "/data" dans ton répertoire "www" : ln -s /data /www/data.

Ainsi tu auras un répertoire "www/data" qui sera une image conforme de "/data"

Sinon ça serait bien que tu expliques pourquoi tu veux faire ça car ça m'a justement tout l'air d'une mauvaise idée niveau sécurité.
Uther est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/07/2012, 09h39   #3
mathiou49
Invité régulier
 
Homme
Inscription : avril 2012
Messages : 12
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Secteur : Enseignement

Informations forums :
Inscription : avril 2012
Messages : 12
Points : 5
Points : 5
Merci pour ta réponse.

En fait j'ai pas mal codé en PHP et quand je construis en site en PHP orienté objet j'utilise l'arborescence suivante :
/Applications
/Library
/www

Seul ce qui est contenu dans le dossier /www peut-être éventuellement accessible à l'internaute et le reste, c'est-à-dire le vrai coeur du site, est inaccessible. Ceci est donc pour moi une vrai sécurité dans la mesure où les données privées sont protégées.

Je pensais donc pouvoir faire la même chose avec les applets Java (j'utilise Java que depuis récemment) car je ne souhaite pas que les applets soient accessibles pour l'internaute simplement en tapant l'url (par exemple) :
http://www.monsite.fr/applets/monApplet.jar
et qu'il puisse télécharger l'applet. Les applets seront payantes !

Mais si tu me dis que c'est une mauvaise idée, je veux bien te croire mais dans ce cas que faire ?
mathiou49 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/07/2012, 10h02   #4
Jimmy_
Membre chevronné
 
Inscription : février 2010
Messages : 623
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : février 2010
Messages : 623
Points : 760
Points : 760
Bonjour,

Il y a un problème de compréhension.
Une applet java s'execute dans la jvm de ton client.

Donc si ton répertoire est accessible n'importe qui peut télécharger ton jar.
Jimmy_ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/07/2012, 10h15   #5
mathiou49
Invité régulier
 
Homme
Inscription : avril 2012
Messages : 12
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Secteur : Enseignement

Informations forums :
Inscription : avril 2012
Messages : 12
Points : 5
Points : 5
Justement non, je ne souhaite pas que le répertoire soit accessible pour le client.

Ou alors tu veux dire qu'à partir du moment où l'applet est exécutée chez le client, elle lui est accessible ? Le code n'est pas transparent ?

Donc finalement, les applets ne sont pas la meilleure solution ?
mathiou49 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/07/2012, 10h28   #6
Uther
Expert Confirmé Sénior
 
Avatar de Uther
 
Homme
Inscription : avril 2002
Messages : 2 688
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : avril 2002
Messages : 2 688
Points : 5 145
Points : 5 145
Comme tu le dis, un serveur web ne donne normalement pas accès en amont du dossier racine du site, c'est une sorte de protection. C'est pour cela que je disais que vouloir rendre accessible un dossier data en dehors de l'arborescence normale ne me paraissait pas une bonne idée.

Ensuite il semble en effet qu'il y ait un problème de compréhension sur les applets. Le principe d'une applet est qu'elle s'exécute dans le navigateur, donc pour pouvoir la faire fonctionner il faut forcément qu'elle soit téléchargeable.

Tu peux inclure dans ton applet un mécanisme d'authentification qui la fait se connecter au serveur, mais ça reste piratable par quelqu'un qui a les connaissances suffisantes pour décompiler et modifier ton code.

Si tu peux faire ce que fait l'applet coté serveur via du php ou une servlet, ça sera effectivement plus sur.
Uther est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/07/2012, 10h29   #7
Jimmy_
Membre chevronné
 
Inscription : février 2010
Messages : 623
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : février 2010
Messages : 623
Points : 760
Points : 760
Oui le code java s'execute chez le client, donc elle doit être accessible comme une ressource web : image, page html etc ...

De plus le code java ca se décompile très facilement, donc ton code est visible.

Pire que ça, ton client peut modifier le code et l'exécuter chez lui et éventuellement utiliser une faille sur ton serveur.

Donc tu vois que les usages pour les applets sont limités, sinon ont aurait pas inventé les RIA.
Jimmy_ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/07/2012, 10h56   #8
mathiou49
Invité régulier
 
Homme
Inscription : avril 2012
Messages : 12
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Secteur : Enseignement

Informations forums :
Inscription : avril 2012
Messages : 12
Points : 5
Points : 5
Merci beaucoup pour vos réponses. Je commence à y voir plus clair.
Je pensais que les applets étaient déjà des RIA.

Quelles technologies me conseillerez-vous comme alternative ? Est-il possible facilement de transformer une application java en servlet (dans ce cas le site est en JEE) ? J'avais pensé aussi à java web start mais je crois que les problèmes seront les mêmes.
Le but étant que les utilisateurs puissent importer leurs applications facilement sur le site et que celles-ci puissent ensuite être utilisées par le reste de la communauté en toute sécurité bien sûr.
mathiou49 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 01h49.


 
 
 
 
Partenaires

Hébergement Web