Website met member area maken?

7 antwoorden [Laatste bericht]
afbeelding van .marvin.
Offline
Bezoeker
Lid sinds: 17/01/2008
Punten: 406

hey mensen,

Ik ga binnenkort een site maken voor de eerste keer, nu wil ik graag een member area op men site. Maar hoe moet dat? moet de host het ondersteunen of maakt dat niks uit?

--

~~Specs~~

Nvidia GeForce 7300GT
2047 MB RAM
Intel(R) Pentium(R) Dual CPU E2140 @ 1,60GHz
Windows Vista Home Premium
32 Bits Besturingssysteem

afbeelding van FlorH
Offline
Bezoeker
Lid sinds: 08/02/2005
Punten: 746

Dit kan je het best doen met PHP, of een andere Server Side Scripting taal.
Dit moet je webhost ondersteunen. In php schrijven is vrij makkelijk, en het is ook rijkelijk ondersteund.

Een alternatief is een mapje op je host beveiligen via een .htaccess-bestandje, alleen is dit wel zeer basic, en onveilig.

afbeelding van Yannou
Offline
Bezoeker
Lid sinds: 13/12/2007
Punten: 1301

Een andere eenvoudige methode is de IP-adressen van de toegelaten members in een array steken, en bij de request van een pagina controleren of het IP-adres van de gebruiker in de lijst met toegelaten members staat. In C# (ASP.NET) ziet dat er zo uit:

protected void CheckMembers(object sender, EventArgs e)
        {
            bool bIsAuthorized = false;
            string[] sAllowed = new string[]{"127.0.0.1"};
            for (int i = 0; i < sAllowed.Length; i++)
                if (sAllowed[i] == Request.UserHostAddress)
                    bIsAuthorized = true;
            if (!bIsAuthorized)
                Response.Write("Je bent niet toegelaten in de member's only sectie van deze site.");
        }

afbeelding van aomlives
Offline
Bezoeker
Lid sinds: 25/03/2008
Punten: 971
Yannou schreef:
Een andere eenvoudige methode is de IP-adressen van de toegelaten members in een array steken, en bij de request van een pagina controleren of het IP-adres van de gebruiker in de lijst met toegelaten members staat.

Dat is wel redelijk amateuristisch, dan kan je in het beste geval slechts vanaf één computer inloggen...

--

AMD Phenom II X3 720 BE @ 3GHz - Asus M4A785TD-M EVO - Kingston 8 GB DDR3 - XFX Radeon HD 4870 512 MB

afbeelding van Yannou
Offline
Bezoeker
Lid sinds: 13/12/2007
Punten: 1301
aomlives schreef:
Dat is wel redelijk amateuristisch, dan kan je in het beste geval slechts vanaf één computer inloggen...

Dat is de bedoeling, aomlives... slechts bepaalde clients mogen maar toegang krijgen tot de gegevens. Zie opgave ;)

Dit principe heeft trouwens heel wat interessante voordelen:

  • zeer eenvoudig te implementeren, zie code hierboven;
  • relatief moeilijk te omzeilen vermits IP-adressen worden toegekend door DHCP en aanverwante protocollen, die niet op een eenvoudige manier kunnen gemanipuleerd worden;
  • werkt volledig in de achtergrond (dus zonder dat gebruikers gegevens moeten invoeren die ze vroeg of laat toch vergeten, zoals user names, passwords, access codes, pins etc.)
afbeelding van aomlives
Offline
Bezoeker
Lid sinds: 25/03/2008
Punten: 971
Yannou schreef:
Dat is de bedoeling, aomlives... slechts bepaalde clients mogen maar toegang krijgen tot de gegevens. Zie opgave ;)

Nee, het is een member area dus bepaalde members moeten toegang kunnen krijgen, niet gewoon een discreet aantal clients.
Ik weet niet goed waar je het allemaal over hebt, want ten eerste is je methode extreem kwetsbaar voor IP spoofing en ten tweede wil DHCP juist zeggen dat IP adressen dynamisch worden toegekend en dus kunnen veranderen. Meteen ook de reden waarom deze methode onbetrouwbaar is.

Ontopic: .marvin., je zal inderdaad een .htaccess bestandje moeten gebruiken zoals FlorH voorstelde, of PHP in combinatie met een database zoals MySQL moeten leren. Dit moet de server inderdaad ook ondersteunen. Een andere mogelijkheid is om een 'template' te gebruiken, zoals Joomla!

Neem hier eens een kijkje :

http://www.dutchjoomla.org/

--

AMD Phenom II X3 720 BE @ 3GHz - Asus M4A785TD-M EVO - Kingston 8 GB DDR3 - XFX Radeon HD 4870 512 MB

afbeelding van Yannou
Offline
Bezoeker
Lid sinds: 13/12/2007
Punten: 1301

IP spoofing is inderdaad een zwak punt van deze techniek, maar is niet zo eenvoudig te implementeren door mensen met slechte bedoelingen. Je moet daarvoor immers al heel wat van TCP/IP en pakketfiltering afweten. Tenzij Marvin dus geheimen van internationaal belang wil gaan beveilingen, loont het gewoon niet de moeite voor hackers om zich met IP spoofing te gaan bezighouden. Bovendien is elke methode wel op één of ander punt kwetsbaar voor hacking, dus ik ben zeker benieuwd naar je alternatief, aomlives ;)

Trouwens, als je in de specificatie van DHCP had gekeken voor je post te schrijven, dan had je gezien dat DHCP een bistabiele toestand onderhoudt. Dat wil in de praktijk zeggen dat de bestaande IP-adressen ongewijzigd blijven zolang er geen veranderingen in de netwerktopologie optreden. Als je dus je computer met toegang tot de member area doorverkoopt op Ebay, en iemand anders sluit die aan op een andere router dan de jouwe, dan verandert de netwerktopologie waardoor er DHCP een nieuw IP-adres zal toekennen en de toegang tot de members area automatisch komt te vervallen.

Stel dat x het aantal members is van de site, dan is de kans dat DHCP aan de koper van die computer opnieuw een geautoriseerd IP-adres toekent gelijk aan (100x)/2^32 %. Zolang het aantal members dus binnen de perken blijft (< 10³) dan zou ik dat verwaarloosbaar klein durven noemen.

afbeelding van .marvin.
Offline
Bezoeker
Lid sinds: 17/01/2008
Punten: 406

ik heb nu een tutorial gedownload en daar staat stap voor stap in hoe alles moet, en dit alles in php.

--

~~Specs~~

Nvidia GeForce 7300GT
2047 MB RAM
Intel(R) Pentium(R) Dual CPU E2140 @ 1,60GHz
Windows Vista Home Premium
32 Bits Besturingssysteem

Inhoud syndiceren
Contact · Disclaimer