Ga naar inhoud
  • 0
Log in om dit te volgen  
allersma

Een Java applicatie met database verbinden

Vraag

Hallo,

Ik ben bezig om een Java applicatie met mijn mysql database te verbinden. Dit gaat niet via localhost, maar via de server IP.
Ik krijg bij het verbinden steeds de exception dat de toegang geweigerd is. Ik gebruik deze code om te verbinden met de database:

Codeblok (DBConnect.java):
1
2
3
4
5
6
            Connection connection = DriverManager.getConnection (
                    // host, gebruikersnaam, wachtwoord
                    "jdbc:mysql://*.*.**.***:3306/allersma_****",
                    "allersma_****",
                    "**********"
            );

Weet iemand hoe het komt dat de toegang geweigerd is? Ik gebruik als naam en wachtwoord dezelfde naam en wachtwoord als bij phpmyadmin.

Deel dit bericht


Link naar bericht
Delen op andere sites

17 antwoorden op deze vraag

Aanbevolen berichten

  • 0
Ik weet verder niks van java maar komt dat niet omdat je geen cross origins mag met phpmyadmin? dus dat je daartoe toegang moet krijgen met je applicatie?

Deel dit bericht


Link naar bericht
Delen op andere sites
  • 0
Keffe (link):
Ik weet verder niks van java maar komt dat niet omdat je geen cross origins mag met phpmyadmin? dus dat je daartoe toegang moet krijgen met je applicatie?

Dat zou kunnen, maar betekent dat de beheerder van one2xs dit zou moeten doen (en ik dat dus niet zelf kan doen)?


Dylan (link):
One2xs host?

Ja

Deel dit bericht


Link naar bericht
Delen op andere sites
  • 0
Allersma (link):
Keffe (link):
Ik weet verder niks van java maar komt dat niet omdat je geen cross origins mag met phpmyadmin? dus dat je daartoe toegang moet krijgen met je applicatie?

Dat zou kunnen, maar betekent dat de beheerder van one2xs dit zou moeten doen (en ik dat dus niet zelf kan doen)?


Dylan (link):
One2xs host?

Ja


daar heb je veel kans op. De server beheerder (in dit geval lennard) zou dit aan moeten zetten. maar je hebt veel kans dat dat niet wordt gedaan omdat dat wegens veiligheids redenen niet slim is.

Misschien kun je het beter aan @lennard vragen

Deel dit bericht


Link naar bericht
Delen op andere sites
  • 0
Ja kan inderdaad geen connectie met de database maken vanuit een ander ip dan de server.

Het is trouwens met Java niet de bedoeling om gebruik te maken van een SQL database tenzij deze sluitend privé gebruikt wordt.

Deel dit bericht


Link naar bericht
Delen op andere sites
  • 0
Oke, bedankt! Ik zal wel aan Lennard vragen wat mogelijk is smiley

Stef (link):
Het is trouwens met Java niet de bedoeling om gebruik te maken van een SQL database tenzij deze sluitend privé gebruikt wordt.

Het is alleen voor privé gebruik om te experimenteren, maar waarom zou het niet anders dan voor privé gebruik gebruikt mogen worden?

Deel dit bericht


Link naar bericht
Delen op andere sites
  • 0
Allersma (link):
Oke, bedankt! Ik zal wel aan Lennard vragen wat mogelijk is smiley

Stef (link):
Het is trouwens met Java niet de bedoeling om gebruik te maken van een SQL database tenzij deze sluitend privé gebruikt wordt.

Het is alleen voor privé gebruik om te experimenteren, maar waarom zou het niet anders dan voor privé gebruik gebruikt mogen worden?


Java doet een request naar de MySQL server en daarbij kan je het IP, naam en wachtwoord onderscheppen.

Deel dit bericht


Link naar bericht
Delen op andere sites
  • 0
Stef (link):
Allersma (link):
Oke, bedankt! Ik zal wel aan Lennard vragen wat mogelijk is smiley

Stef (link):
Het is trouwens met Java niet de bedoeling om gebruik te maken van een SQL database tenzij deze sluitend privé gebruikt wordt.

Het is alleen voor privé gebruik om te experimenteren, maar waarom zou het niet anders dan voor privé gebruik gebruikt mogen worden?


Java doet een request naar de MySQL server en daarbij kan je het IP, naam en wachtwoord onderscheppen.


Of je decompiled de .jar en je hebt ook toegang tot de inlog gegevens. Niet veilig dus!

Deel dit bericht


Link naar bericht
Delen op andere sites
  • 0
Ah, ik ben nog nieuw met Java. Had niet verwacht dat .jar zo onveilig was. Had gedacht dat je hooguit een SQL injectie kon uitvoeren.

Thanks for the info!

Deel dit bericht


Link naar bericht
Delen op andere sites
  • 0
Een andere oplossing is om met PHP op de one2xs host een API te bouwen, en deze data via je JAVA-applet op te vragen.Dan zit je ook niet met wachtwoorden die je over de lijn meestuurt.

Deel dit bericht


Link naar bericht
Delen op andere sites
  • 0
Aarclay (link):
Een andere oplossing is om met PHP op de one2xs host een API te bouwen, en deze data via je JAVA-applet op te vragen.Dan zit je ook niet met wachtwoorden die je over de lijn meestuurt.


Maar dan zou je alleen informatie kunnen opvragen. mocht je het dan toch willen aanpassen moet je alsnog met wachtwoorden werken en dat is dan weer even onveilig xD

Deel dit bericht


Link naar bericht
Delen op andere sites
  • 0
Keffe (link):
Aarclay (link):
Een andere oplossing is om met PHP op de one2xs host een API te bouwen, en deze data via je JAVA-applet op te vragen.Dan zit je ook niet met wachtwoorden die je over de lijn meestuurt.


Maar dan zou je alleen informatie kunnen opvragen.

Hoezo? Je kan ook een CRUD-systeem bouwen in een API om te schrijven, lezen, aan te passen of te verwijderen.
Quote:
Mocht je het dan toch willen aanpassen moet je alsnog met wachtwoorden werken en dat is dan weer even onveilig xD

Er zijn vast wel challenge -of encryptie-systemen om het één en ander te beveiligen. Maar het ligt er aan wie de applet gebruikt.

Deel dit bericht


Link naar bericht
Delen op andere sites
  • 0
Aarclay (link):
Keffe (link):
Aarclay (link):
Een andere oplossing is om met PHP op de one2xs host een API te bouwen, en deze data via je JAVA-applet op te vragen.Dan zit je ook niet met wachtwoorden die je over de lijn meestuurt.


Maar dan zou je alleen informatie kunnen opvragen.

Hoezo? Je kan ook een CRUD-systeem bouwen in een API om te schrijven, lezen, aan te passen of te verwijderen.
Quote:
Mocht je het dan toch willen aanpassen moet je alsnog met wachtwoorden werken en dat is dan weer even onveilig xD

Er zijn vast wel challenge -of encryptie-systemen om het één en ander te beveiligen. Maar het ligt er aan wie de applet gebruikt.


Dat is het hele probleem altijd. Als de code leesbaar wordt voor mensen kunnen ze precies hetzelfde als de applicatie. maakt meestal niet uit hoe je het bouwt omdat de code gewoon een proces uitvoert wat een mens ook uit kan voeren.

En inderdaad als alleen zij het gebruiken prima aangezien zij de code toch weten. of mensen die er niks van snappen laten gebruiken. maar mocht het in de verkeerde handen vallen dan kunnen ze alles in je database doen.

Dus lijkt me nog altijd niet slim.

Deel dit bericht


Link naar bericht
Delen op andere sites
  • 0
Ga eens naar DirectAdmin -> MySQL Management -> Kies een database -> Voeg je IP toe bij "Access hosts"

Dan zou je moeten kunnen verbinden (of staat dat uit hier?)

Deel dit bericht


Link naar bericht
Delen op andere sites
  • 0
Keffe (link):
Aarclay (link):
Keffe (link):
Klik om eerdere quotes te tonen


Maar dan zou je alleen informatie kunnen opvragen.

Hoezo? Je kan ook een CRUD-systeem bouwen in een API om te schrijven, lezen, aan te passen of te verwijderen.
Quote:
Mocht je het dan toch willen aanpassen moet je alsnog met wachtwoorden werken en dat is dan weer even onveilig xD

Er zijn vast wel challenge -of encryptie-systemen om het één en ander te beveiligen. Maar het ligt er aan wie de applet gebruikt.


Dat is het hele probleem altijd. Als de code leesbaar wordt voor mensen kunnen ze precies hetzelfde als de applicatie. maakt meestal niet uit hoe je het bouwt omdat de code gewoon een proces uitvoert wat een mens ook uit kan voeren.

En inderdaad als alleen zij het gebruiken prima aangezien zij de code toch weten. of mensen die er niks van snappen laten gebruiken. maar mocht het in de verkeerde handen vallen dan kunnen ze alles in je database doen.

Dus lijkt me nog altijd niet slim.


Je kan met IP-lists werken of iets dergelijks, of zelfs met hostnames van de PC die je ontgetwijfeld met JAVA op kan halen. Niet 100% veilig, maar niets is 100% veilig.

Deel dit bericht


Link naar bericht
Delen op andere sites
  • 0
Aarclay (link):
Keffe (link):
Aarclay (link):
Klik om eerdere quotes te tonen

Hoezo? Je kan ook een CRUD-systeem bouwen in een API om te schrijven, lezen, aan te passen of te verwijderen.
Klik om eerdere quotes te tonen

Er zijn vast wel challenge -of encryptie-systemen om het één en ander te beveiligen. Maar het ligt er aan wie de applet gebruikt.


Dat is het hele probleem altijd. Als de code leesbaar wordt voor mensen kunnen ze precies hetzelfde als de applicatie. maakt meestal niet uit hoe je het bouwt omdat de code gewoon een proces uitvoert wat een mens ook uit kan voeren.

En inderdaad als alleen zij het gebruiken prima aangezien zij de code toch weten. of mensen die er niks van snappen laten gebruiken. maar mocht het in de verkeerde handen vallen dan kunnen ze alles in je database doen.

Dus lijkt me nog altijd niet slim.


Je kan met IP-lists werken of iets dergelijks, of zelfs met hostnames van de PC die je ontgetwijfeld met JAVA op kan halen. Niet 100% veilig, maar niets is 100% veilig.


Daarom smiley

Deel dit bericht


Link naar bericht
Delen op andere sites
  • 0
Mja, voor mijn CMS heb ik ook een licentiesysteem gebouwd die op hostnames checkte + een unieke key erbij.

Maar goed, het CMS is nooit echt voor anderen gebruikt smiley

Deel dit bericht


Link naar bericht
Delen op andere sites
  • 0
Je kunt in DirectAdmin je IP adres toegang geven tot de database, dat zou tegenwoordig weer moeten werken. Maar wachtwoorden in bestanden die je naar anderen stuurt (of dat nu .jar, .apk, .exe of wat dan ook is) zijn altijd te onderscheppen, dus je moet hoe dan ook met een API gaan werken om het veilig te krijgen, zoals men hierboven inderdaad al opmerkte.

Deel dit bericht


Link naar bericht
Delen op andere sites

Maak een account aan of log in om te reageren

Je moet lid zijn om een reactie te kunnen achterlaten

Account aanmaken

Maak een account aan in onze gemeenschap. Het is makkelijk!

Registreer een nieuw account

Aanmelden

Ben je al lid? Meld je hier aan.

Nu aanmelden
Log in om dit te volgen  

×