Area protetta 2
-
domenica 31 gennaio 2010 10:12Ciao a tutti, qualche giorno fa ho inserito un post per richiedere aiuto per creare un'area protetta per il mio sito.
Dopo i vostri cortesi suggerimenti ho "perso" tutta la settimana in prove ma non ho ottenuto un risultato che si possa definire decente.
Ho avuto un sacco di problemi con tutti i modelli che ho provato a scaricare e modificare (fra questi anche quelli segnalti nelle risposte al post).
Ne ho provati di tutti i colori e di tutti i tipi (con database e senza) ma il risultato è pessimo. Vi richiedo aiuto (non chiedo la pappa pronta capiamoci) se avete da segnalarmi un buon modello da provare ad applicare. Non ho delle esigenze particolari, non ho bisogno di registrazioni automatiche o cose del genere. Gli utenti e le password le metto io e chi dovrà usufriurne saprà cosa mettere, l'unica cosa è che ci sia un minimo di riservatezza. Non ha senso fare una pagina protetta ma che sia raggiungibile direttamente se inserisco dirrettamente l'indirizzo. L'ultimo modello che ho provato (e cancellato per disperazione) prevedeva un database, ma non so il perchè durante la registrazione utente (il modello scaricato lo prevedeva) non si salvava nonostante fosse inserito nella cartella mdb-database con i diritti di scrittura. L'unica cosa che mi piacerebbe, sarebbe avere le 2 caselle (form) per l'inserimento utente/password direttamente sulla pagina iniziale e non in una pagina separata e possibilmente un tasto per l'uscita dall'area protetta. Mi aiutate ancora? paps
Tutte le risposte
-
domenica 31 gennaio 2010 14:03
Ciao Paps,
quello che puoi provare a fare è creare una nuova web application in visual studio.
A questo punto, nella finestra del solution explorer, selezionando il progetto della web application, trovi un iconetta (il cui disegno è un mondo con un martello) che ti permette di configurare gli utenti della tua application.
Se premi questa iconetta ti viene aperto un sito web per configurare l'applicazione.
Hai un tab "sicurezza" che ti porta alla pagina di impostazione degli utenti, dei ruoli e delle regole di accesso.
Sui ruoli puoi impostare il membership di cui parlavamo nel precedente post. Se premi il link puoi scegliere uno dei due possibili provider. Scegli quello internet (che si appoggia su sql server).
Quando scegli il provider "internet" ti viene creato un database mdf nella cartella App_Data (che si chiama ASPNETDB.MDF).
Includi il file di database nel progetto e crea gli utenti dall'applicazione di configurazione.
Per attivare l'autenticazione è sufficiente che tu configuri il web.config in maniera opportuna:
1) scegli l'autenticazione Forms cioè, il framework quando visiti una pagina protetta, ti gira automaticamente ad una pagina di login che decidi tu;
<authentication mode="Forms" > <forms loginUrl="login.aspx" name=".ASPXFORMSAUTH" /> </authentication>
2) definisci la stringa di connessione alla banca dati degli utenti;
<connectionStrings> <add name="SqlServices" connectionString="Server=.\SQLExpress;AttachDbFilename=|DataDirectory|ASPNETDB.MDF;Database=ASPNETDB;Trusted_Connection=Yes;" /> </connectionStrings>
3) Imposta il membership provider:
<membership defaultProvider="SqlProvider" userIsOnlineTimeWindow="15"> <providers> <add name="SqlProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="SqlServices" applicationName="MyApplication" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="true" requiresUniqueEmail="false" passwordFormat="Hashed" maxInvalidPasswordAttempts="5" passwordAttemptWindow="10" /> </providers> </membership>
4) imposta le autorizzazioni del sito:
<authorization> <deny users="?" /> </authorization>
Per esemplificare il tutto ho cercato di realizzarti una semplice webapp (con due pagine) che sulla mia macchina funziona. Spero faccia altrettanto sulla tua.
Prova a scaricarla e a vedere se può servirti a qualcosa.
http://www.megaupload.com/?d=DB5FZGPA
A disposizione.- Contrassegnato come risposta Andrea Dottor [MVP]MVP, Moderator mercoledì 24 febbraio 2010 16:08
-
lunedì 1 febbraio 2010 06:09Ciao Massimo, grazie per la risposta. Non ti nascondo che appena letta ho fatto un respiro profondo e l'ho guardata per 30 minuti e ho fatto passare una notte intera prima di risponderti. Credo sinceramente che l'informatica sia bellissima e appassionante, è bello conoscerla, provare, applicarla; il problema è che per i comuni utilizzatori non professionali è causa anche di "disperazione". Io utilizzo alcuni applicativi Microsoft mi piace provare e riprovare le cose che non conosco, se non riesco nello scopo chiedo nei forum e ho sempre trovato persone che mi hanno aiutato, forse anche perché ho sempre provato prima di domandare e forse non faccio domande stupide ma mirate. Tu sei stato gentilissimo sia per la tempestività nella risposta, sia perchè mi hai preparato il codice e per di più me lo hai anche mandato, ma io (mi sento piccolo piccolo in questo momento) non ho la più pallida idea di cosa ci devo/posso fare. Mi prendo un giorno o 2 per vedere se esiste una versione in prova del software che hai segnalato e vedo se riesco a saltarci fuori. Sono un pochino sconsolato ma non mollo, sicuramente avrò bisogno visto che non so neanche di cosa parliamo. Grazie tante.
-
lunedì 1 febbraio 2010 10:32Ciao Paps,
a mio modo di vedere dovresti, prima capire di cosa stiamo parlando.
Quello che ti ho segnalato non è un vero e proprio software ma un ambiente e un framework di sviluppo.
Si tratta, quindi, di programmazione e per avventurarti in questo mare magno, dovresti, a mio modo di vedere, prima conoscere il framework .NET e uno dei linguaggi di sviluppo che ti viene messo a disposizione (VB.NET o C#).
In più, ti stai avventurando nel mare web e, quindi, è importante conoscere cosa è il protocollo HTTP e, in particolare, visto che intendi lavorare con il framework, quali sono i capisaldi di ASP.NET.
La versione free dell'ambiente di sviluppo (il framework è di suo gratuito) è scaricabile agli indirizzi :
http://www.microsoft.com/express/downloads/ (visual studio 2008)
http://msdn.microsoft.com/it-it/vstudio/dd582936.aspx (visual studio 2010 beta2)

