[PHP] Inloggen op phpmyadmin via PHP pagina

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Zeezicht
  • Registratie: Juni 2001
  • Laatst online: 11-08 17:47
Ik ben bezig met het maken van een controlpanel en nu wil ik dat daarine en overzicht komt te staan van de in gebruik zijnde DBs van een klant.
Nu is dat niet zo moeilijk te realiseren, alleen wil ik ook dat ze makelijk via phpmyadmin kunnen inloggen en de database laten beheren. Ik wil dus niet dat ze nog een keer hun mysql login/pw moeten intypen om er te komen. Het eerste inlog scherm van phpmyadmin wil ik dus overslaan.

Maar hoe doe ik dat? Ik moet dus eigenlijk de inloggegevens POSTen naar dat inlog form... helaas is mij dat nog niet gelukt. Weet iemand wel hoe dat kan?

Acties:
  • 0 Henk 'm!

  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 21-09 14:28
Kijk eens in de documentatie van PHPmyAdmin want er is ook een soort van 'providers' versie beschikbaar.

Acties:
  • 0 Henk 'm!

Verwijderd

een manier is om uit de phpmyadmin index de beveiliging te slopen. nadeel is dan dat als mensen een directe link vinden naar die pagina dat ze aan je database kunnen sleutelen zonder dat jij dat wilt.

wat ik zou doen is met sessies werken, als je weet hoe je een control pannel maakt, weet je vast wel hoe php gaat. dus sloop de beveiliging uit phpmyadmin, en defineer bij het inloggen op het control panel een sessie id. en controleer bij het openen van de phpmyadmin of de sessie geldig is of niet.

Ik kan je niet vertellen hoe je de beveiliging uit phpmyadmin sloopt, maar als je dat eenmaal gelukt is kan ik je wel helpen met je sessies

[ Voor 13% gewijzigd door Verwijderd op 21-07-2004 12:39 ]


Acties:
  • 0 Henk 'm!

  • Zeezicht
  • Registratie: Juni 2001
  • Laatst online: 11-08 17:47
Ik ga PHPMyAdmin liever niet veranderen, want als er dan een nieuwe versie komt moet ik datzelfde weer gaan doen. Is lastig als er beveiligingsupdates zijn oid.

Die provider versie ga ik eens bekijken....

Maar is er geen mogelijkheid met PHP een form te posten? Ik wil dus niet de gegevens in hidden fields in de pagina embedden, maar het via een soort tussenpagina doen.

Acties:
  • 0 Henk 'm!

Verwijderd

Volgens mij zit in pma hiervoor al een functie

Acties:
  • 0 Henk 'm!

  • Anders
  • Registratie: December 2000
  • Laatst online: 13-09 18:52
.. edit- niet goed gelezen

[ Voor 97% gewijzigd door Anders op 21-07-2004 13:24 ]

Ik spoor veilig of ik spoor niet.


Acties:
  • 0 Henk 'm!

  • ZEN
  • Registratie: April 2000
  • Laatst online: 10-03-2021

ZEN

huh? wat doe ik hier?

Dus je weet al de mysql inlog gegevens?

PhpMyAdmin geeft toch normaal gesproken een popup waar in je username en password kan invullen? (HTTP authentication)

Kan je dan niet de $_SERVER instellen? en dan met name de $PHP_AUTH_USER, $PHP_AUTH_PW ? Dacht dat PMA daar naar keek.

Linux server installatie en beheer (clusters failover loadbalancing): http://www.virtualconcepts.nl/


Acties:
  • 0 Henk 'm!

  • WPN
  • Registratie: Augustus 2003
  • Laatst online: 24-07 21:14

WPN

sessie variabelen misschien?

inplaats van dat phpmyadmin de gegevens krijgt via een POST, dat via de sessie variabelen te laten gaan?

(als dat geen conflicten geeft met de sessies die phpmyadmin aanmaakt)

Als ik denk zoals ik dacht, dan doe ik zoals ik deed, als ik doe zoals ik deed, dan denk ik zoals ik dacht! Cogito Ergo Sum


Acties:
  • 0 Henk 'm!

Verwijderd

Peluso schreef op 21 juli 2004 @ 13:51:
sessie variabelen misschien?

inplaats van dat phpmyadmin de gegevens krijgt via een POST, dat via de sessie variabelen te laten gaan?

(als dat geen conflicten geeft met de sessies die phpmyadmin aanmaakt)
precies, wat jij zegt is ook mijn oplossing. en zeezicht, tis tog een kleine moeite, als je eenmaal weet hoe je die beveiliging er uit haalt, om dat bij een update van phpma opnieuw te doen. er komt niet elke dag een update uit. en met sessies is denk ik de makkelijkste manier om dit op te lossen.

Acties:
  • 0 Henk 'm!

  • alienfruit
  • Registratie: Maart 2003
  • Laatst online: 20:38

alienfruit

the alien you never expected

of je gebruikt curl })

Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

Als je de authetication op "cookie" hebt staan, dan moet je gewoon naar de verwerkingspagina van het login scherm kunnen posten... Dus niet naar het loginscherm zelf, zoals je in je TS impliceert. :)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Acties:
  • 0 Henk 'm!

Verwijderd

Ik wou net zeggen, waarom zou inloggen via een POSTende tussenpagina niet lukken?

En inderdaad, het volgende werkt perfect:

code:
1
2
3
4
5
6
7
8
9
10
<html>
    <head><title>phpMyAdmin inlog test</title></head>
    <body>
        <form method="POST" action="http://myserver.com/phpmyadmin/index.php">
            <input type="hidden" name="pma_username" value="sjaak">
            <input type="hidden" name="pma_password" value="testhaak">
            <input type="submit" value="Ga naar phpMyAdmin">
        </form>
    </body>
</html>

Acties:
  • 0 Henk 'm!

Verwijderd

Je moet er wel voor zorgen dat phpMyAdmin ingesteld staat op een inlog form en niet zo een pop up venstertje :)
Als je begrijpt wat ik bedoel

Acties:
  • 0 Henk 'm!

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 18-09 16:28

Bosmonster

*zucht*

Even een eenvoudig ander idee. In config.inc.php van PhpMyAdmin:

PHP:
1
2
3
$cfg['Servers'][$i]['user']          = ''; 
$cfg['Servers'][$i]['password']      = ''; 
$cfg['Servers'][$i]['only_db']       = '';


vervangen naar

PHP:
1
2
3
$cfg['Servers'][$i]['user']          = $_SESSION['my_username'];
$cfg['Servers'][$i]['password']      = $_SESSION['my_password'];
$cfg['Servers'][$i]['only_db']       = $_SESSION['my_database'];


En dan in de pagina ervoor gewoon even die sessie variabelen zetten, redirecten.. klaar is kees :)

[edit]
auth_type wel even op config zetten dan natuurlijk.

En even wat checkjes of de sessie-variablen gezet zijn is ook geen overbodige luxe. Voordeel is dat phpmyadmin zo ook nooit los op te starten is.. je moet van je eigen pagina komen die die sessie zet.

[ Voor 22% gewijzigd door Bosmonster op 21-07-2004 14:37 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Bosmonster schreef op 21 juli 2004 @ 14:35:
Even een eenvoudig ander idee. In config.inc.php van PhpMyAdmin:

PHP:
1
2
3
$cfg['Servers'][$i]['user']          = ''; 
$cfg['Servers'][$i]['password']      = ''; 
$cfg['Servers'][$i]['only_db']       = '';


vervangen naar

PHP:
1
2
3
$cfg['Servers'][$i]['user']          = $_SESSION['my_username'];
$cfg['Servers'][$i]['password']      = $_SESSION['my_password'];
$cfg['Servers'][$i]['only_db']       = $_SESSION['my_database'];


En dan in de pagina ervoor gewoon even die sessie variabelen zetten, redirecten.. klaar is kees :)

[edit]
auth_type wel even op config zetten dan natuurlijk.
Briljant, bravo. why didnt i think of that... _/-\o_ _/-\o_

Acties:
  • 0 Henk 'm!

  • Zeezicht
  • Registratie: Juni 2001
  • Laatst online: 11-08 17:47
Bosmonster schreef op 21 juli 2004 @ 14:35:
Even een eenvoudig ander idee. In config.inc.php van PhpMyAdmin:

PHP:
1
2
3
$cfg['Servers'][$i]['user']          = ''; 
$cfg['Servers'][$i]['password']      = ''; 
$cfg['Servers'][$i]['only_db']       = '';


vervangen naar

PHP:
1
2
3
$cfg['Servers'][$i]['user']          = $_SESSION['my_username'];
$cfg['Servers'][$i]['password']      = $_SESSION['my_password'];
$cfg['Servers'][$i]['only_db']       = $_SESSION['my_database'];


En dan in de pagina ervoor gewoon even die sessie variabelen zetten, redirecten.. klaar is kees :)

[edit]
auth_type wel even op config zetten dan natuurlijk.

En even wat checkjes of de sessie-variablen gezet zijn is ook geen overbodige luxe. Voordeel is dat phpmyadmin zo ook nooit los op te starten is.. je moet van je eigen pagina komen die die sessie zet.
Dat is wel een briljant idee idd.. weinig te veranderen en de makelijkste manier.

Dat van die tussenpagina ergens hierboven wil ik juist niet. Ik wil namelijk niet dat de username/pwd in de pagina staan.

En die oplossing met CURL dan? Heeft iemand daar een voorbeeldje van hoe je dan een variabele doorgeeft via een POST?
Pagina: 1