Visualizzazione dei risultati da 1 a 7 su 7

Discussione: Problema doppio login

  1. #1

    Problema doppio login

    Ciao a tutti,
    ho un problema con il login, ho un login utente posizionato su tutte le pagine frontend inoltre ho un'area backoffice con un altro login, il primo fa riferimento alla tabella UTENTI il secondo alla tabella ADMIN però nel web.config posso inserire un solo <authentication mode="Forms"> come faccio per differenziare i 2 login?


    ciao e grazie
    fabio

  2. #2
    link suggerimenti?

  3. #3
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    Premesso che:

    - nell'applicazione puoi inserire quanti web.config vuoi, a patto che non siano nella stessa cartella,

    - una volta specificato che l'autenticazione e' Forms, in genere non è consigliato cambiarla per sottoaree della stessa applicazione,

    - potresti effettuare il logout una volta entrato nell'area admin e rifare la procedura di assegnazione dell'utente (classe User etc),

    puoi essere piu' specifico ? Cosa stai usando ? Il Membership Profiling di asp.net ?

  4. #4
    Originariamente inviato da djciko
    Premesso che:

    - nell'applicazione puoi inserire quanti web.config vuoi, a patto che non siano nella stessa cartella,

    - una volta specificato che l'autenticazione e' Forms, in genere non è consigliato cambiarla per sottoaree della stessa applicazione,

    - potresti effettuare il logout una volta entrato nell'area admin e rifare la procedura di assegnazione dell'utente (classe User etc),

    puoi essere piu' specifico ? Cosa stai usando ? Il Membership Profiling di asp.net ?
    cosa sto usando... un semplice controllo login, si stò cercando di usare 2 web.config, in quello nella root principale ho inserito questo codice:
    codice:
        <location path="areaprivata">
            <system.web>
                <authorization>
                    <deny users="*" />
                </authorization>
            </system.web>
        </location>
    
            <authentication mode="Forms">
                <forms name=".ASPXAUTH" loginUrl="~/Login.aspx" protection="All" timeout="30" path="/" requireSSL="false" slidingExpiration="true" cookieless="UseDeviceProfile" />
            </authentication>
    mentre nel web.config principale funziona nel web.config della directory backoffice non funziona mi fa vedere tutte le pagine senza fare redirect al login!

    Scusate la poca chiarezza, però il login di asp.net mi manda in palla anche perchè lo stò utilizzando in maniera mista ossia non basato sui ruoli (non faccio gestire in toto da asp.net) ma poi vado a controllare gli utenti in un mio database.

  5. #5
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    Basta UN SOLO web.config, nella root, con <location path="areaprivata"> eccetera.

    Devi pero' aggiungere le utenze ammesse a quell'area, oppure i ruoli.

    Ad esempio, in questo modo possono entrare in quell'area soltanto gli utenti che hanno il ruolo "admin":

    codice:
    <configuration>
      <location path="areaprivata">
        <system.web>
          <authorization>
            <allow roles="admin" />
            <deny users="*" />
          </authorization>
        </system.web>
      </location>
    <configuration>

    ...oppure, se vuoi restringere l'accesso all'area soltanto a determinati utenti:

    codice:
    <configuration>
      <location path="areaprivata">
        <system.web>
          <authorization>
            <allow users="giovanni,francesco,nicola" />
            <deny users="*" />
          </authorization>
        </system.web>
      </location>
    <configuration>
    MSDN sull'autorizzazione:
    http://msdn.microsoft.com/en-us/libr...=vs.80%29.aspx

  6. #6
    ma io ho due pagine di login con 2 login...
    se ho un solo web.config
    <forms name=".ASPXAUTH" loginUrl="~/Login.aspx" protection="All" timeout="30" path="/" requireSSL="false" slidingExpiration="true" cookieless="UseDeviceProfile" />

    come faccio a dirgli se deve andare in login.aspx oppure dentro backoffice/login.aspx?
    io in realtà non utilizzo il controllo login di asp.net ma un login costruito da me dove nell'evento click del pulsante vado a:
    cercare nella tabella del mio database l'utente e la password inserita, se la trovo setto delle variabili di sessione ed imposto FormsAuthentication.RedirectFromLoginPage(nomeutet ne.Text, True) ed infine faccio il redirect alla pagina default.
    Ora come faccio ad applicare il tuo sistema al mio? è possibile?

  7. #7
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    Non capisco perche' usarne due...
    Se in ingresso accede un Admin, puo' entrare anche in quell'area, altrimenti no, semplice...

    Altrimenti prova a fare il FormsAutentication.Signout prima di entrare nell'area dove c'e' l'altro web.config

    Ma ti ripeto, e' una forzatura...ASP.Net con la Forms Autentication prevede un solo login, altrimenti si complicano le cose

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.