+ Rispondi al Thread
Visualizzazione dei risultati da 1 a 9 su 9

Discussione: [ASP.NET] recuperare la password di accesso in chiaro

  1. #1
    iltheo non è in linea Scolaretto
    Luogo
    Milano
    Post
    61

    [ASP.NET] recuperare la password di accesso in chiaro

    Ciao a tutti. Ho un piccolo problemino... Ho creato una sezione del mio sito con accesso tramite login e password. Ho inserito anche la sezione per il recupero della password, ma questa mi torna criptata... come posso fare per "riavere" la password in modo chiaro?
    Grazie a tutti...
    iltheo

  2. #2
    L'avatar di SignIn
    SignIn non è in linea Scribacchino
    Luogo
    Milano
    Post
    1,026
    ciao ilth,
    adesso non ricordo benissimo, ma se non sbaglio dipende dalla definizione del provider nel web.config, cioè la chiave passwordFormat indica la modalità di memorizzazione della password sul db.
    Se è impostata su Hashed non è possibile richiederla perchè viene generata una stringa alfanumerica partendo da quella indicata nel campo, con Clear la password è in chiaro(quindi è possibile), con Encrypted viene crittografata ma non ricordo se si può ricavare(presumo di no proprio per una questione di sicurezza).
    Prendi tutto con le pinze perchè purtroppo dovrei rivedere un pò di cose per risponderti in modo certo.

  3. #3
    iltheo non è in linea Scolaretto
    Luogo
    Milano
    Post
    61
    Ciao SignIn, quindi devo agire sul web.config ....però non ho nessun campo o label con il nome che mi hai descritto....

    Vediamo, ti posto il mio web.config , magari riesci al volo a vedere dov'è l'errore...
    <?xml version="1.0"?>
    <!--
    Nota: come alternativa alla modifica manuale del file, è possibile utilizzare lo
    strumento di amministrazione Web per configurare le impostazioni dell'applicazione. Utilizzare il comando
    Configurazione ASP.NET del menu Sito Web di Visual Studio.
    Un elenco completo di impostazioni e commenti è disponibile nel file
    machine.config.comments che si trova in genere in
    \Windows\Microsoft.Net\Framework\v2.x\Config
    -->
    <configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
    <appSettings>
    <add key="localhost.InsertRequest" value="InsertRequest.asmx"/>
    </appSettings>
    <connectionStrings>
    <remove name="LocalSqlServer" />
    <add name="LocalSqlServer"
    connectionString="server=IITCW334\SQLEXPRESS;datab ase=aspnetdb;integrated security=sspi;" />
    <add name="patchConnectionString"
    connectionString="Data Source=IITCW334\SQLEXPRESS;Initial Catalog=patch;Persist Security Info=True;User ID=sa;Password=lucaetheo"
    providerName="System.Data.SqlClient" />
    </connectionStrings>
    <system.web>
    <!--
    Impostare compilation debug="true" per inserire i
    simboli di debug nella pagina compilata. Poiché tale operazione ha effetto
    sulle prestazioni, impostare questo valore su true
    solo durante lo sviluppo.
    -->
    <roleManager enabled="true" />
    <authentication mode="Forms">
    <forms
    name=".ASPXAUTH"
    loginUrl="./autorizzati/login.aspx"
    protection="Validation"
    timeout="999999" />
    </authentication>
    <compilation debug="true">
    <assemblies>
    <add assembly="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
    </assemblies>
    </compilation>
    <!--
    La sezione <authentication> consente di configurare
    la modalità di autenticazione della protezione utilizzata da
    ASP.NET per identificare un utente in ingresso.
    -->
    <!--
    La sezione <customErrors> consente di configurare
    l'operazione da eseguire in caso di errore non gestito
    durante l'esecuzione di una richiesta. In particolare,
    consente agli sviluppatori di configurare le pagine di errore HTML
    in modo che vengano visualizzate al posto dell'analisi dello stack dell'errore.
    <customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
    <error statusCode="403" redirect="NoAccess.htm" />
    <error statusCode="404" redirect="FileNotFound.htm" />
    </customErrors>
    -->
    <customErrors mode="Off"/>
    </system.web>
    <location path="autorizzati">
    <!--
    La sezione seguente consente l'accesso ai soli utenti registrati.
    Tutti gli utenti che non si identificano tramite registrazione non
    potranno accedere a nessuna delle pagine protette.
    -->
    <system.web>
    <authorization>
    <deny users="?"/>
    </authorization>
    </system.web>
    </location>
    <system.net>
    <mailSettings>
    <smtp from="il mio indirizzo di posta">
    <network host="smtp ditta" password="" userName="POL database Administrator" />
    </smtp>
    </mailSettings>
    </system.net>
    </configuration>


    Grazie come sempre prodigo di consigli e molto prezioso....
    iltheo

  4. #4
    L'avatar di SignIn
    SignIn non è in linea Scribacchino
    Luogo
    Milano
    Post
    1,026
    ...eh si stai usando quello di default, quindi stai usando il membership definito nel file machine.config...quindi puoi per esempio aggiungere al tuo web.config una sezione membership in cui indicare il provider AspNetSqlMembershipProvider e ridefinire la chiave che ti ho indicato che di default è proprio hashed...per vedere come è fatta la sezione provider puoi recuperare il machine.config:
    C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONF IG\machine.config
    devi trovare <membership>

  5. #5
    iltheo non è in linea Scolaretto
    Luogo
    Milano
    Post
    61
    Ho provato... ma continua a darmi la password cripatata.... ho modificato come segue il file web.config

    <?xml version="1.0"?>
    <!--
    Nota: come alternativa alla modifica manuale del file, è possibile utilizzare lo
    strumento di amministrazione Web per configurare le impostazioni dell'applicazione. Utilizzare il comando
    Configurazione ASP.NET del menu Sito Web di Visual Studio.
    Un elenco completo di impostazioni e commenti è disponibile nel file
    machine.config.comments che si trova in genere in
    \Windows\Microsoft.Net\Framework\v2.x\Config
    -->
    <configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
    <appSettings>
    <add key="localhost.InsertRequest" value="InsertRequest.asmx"/>
    </appSettings>
    <connectionStrings>
    <remove name="LocalSqlServer" />
    <add name="LocalSqlServer"
    connectionString="server=IITCW334\SQLEXPRESS;datab ase=aspnetdb;integrated security=sspi;" />
    <add name="patchConnectionString"
    connectionString="Data Source=IITCW334\SQLEXPRESS;Initial Catalog=patch;Persist Security Info=True;User ID=sa;Password=lucaetheo"
    providerName="System.Data.SqlClient" />
    </connectionStrings>
    <system.web>
    <!--
    Impostare compilation debug="true" per inserire i
    simboli di debug nella pagina compilata. Poiché tale operazione ha effetto
    sulle prestazioni, impostare questo valore su true
    solo durante lo sviluppo.
    -->
    <roleManager enabled="true" />
    <authentication mode="Forms">
    <forms
    name=".ASPXAUTH"
    loginUrl="./autorizzati/login.aspx"
    protection="Validation"
    timeout="999999" />
    </authentication>
    <compilation debug="true">
    <assemblies>
    <add assembly="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
    </assemblies>
    </compilation>
    <!--
    La sezione <authentication> consente di configurare
    la modalità di autenticazione della protezione utilizzata da
    ASP.NET per identificare un utente in ingresso.
    -->
    <!--
    La sezione <customErrors> consente di configurare
    l'operazione da eseguire in caso di errore non gestito
    durante l'esecuzione di una richiesta. In particolare,
    consente agli sviluppatori di configurare le pagine di errore HTML
    in modo che vengano visualizzate al posto dell'analisi dello stack dell'errore.
    <customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
    <error statusCode="403" redirect="NoAccess.htm" />
    <error statusCode="404" redirect="FileNotFound.htm" />
    </customErrors>
    -->
    <customErrors mode="Off"/>
    <membership>
    <providers>
    <add name="LocalSqlServer"
    type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
    connectionStringName="LocalSqlServer"
    enablePasswordRetrieval="false"
    enablePasswordReset="true"
    requiresQuestionAndAnswer="true"
    applicationName="/"
    requiresUniqueEmail="false"
    passwordFormat="Clear"
    maxInvalidPasswordAttempts="5"
    minRequiredPasswordLength="7"
    minRequiredNonalphanumericCharacters="1"
    passwordAttemptWindow="10"
    passwordStrengthRegularExpression="" />
    </providers>
    </membership>
    </system.web>
    <location path="autorizzati">
    <!--
    La sezione seguente consente l'accesso ai soli utenti registrati.
    Tutti gli utenti che non si identificano tramite registrazione non
    potranno accedere a nessuna delle pagine protette.
    -->
    <system.web>
    <authorization>
    <deny users="?"/>
    </authorization>
    </system.web>
    </location>
    <system.net>
    <mailSettings>
    <smtp from="Matteo.Scirea@italtel.it">
    <network host="insidesmtp.italtel.it" password="" userName="POL database Administrator" />
    </smtp>
    </mailSettings>
    </system.net>
    </configuration>

    ma sinceramente non capisco dov'è l'errore....
    iltheo

  6. #6
    L'avatar di SignIn
    SignIn non è in linea Scribacchino
    Luogo
    Milano
    Post
    1,026
    ...la property name dovrebbe essere AspNetSqlMembershipProvider no LocalSqlServer...e poi prova a inserire un nuovo utente

  7. #7
    iltheo non è in linea Scolaretto
    Luogo
    Milano
    Post
    61
    Ho eseguito le correzioni che mi hai segnalato ad ho rimosso e ricreato l'utente... ma continua a darmi la password criptata... eppure mi sembra di aver eseguito correttamente le azioni...
    iltheo

  8. #8
    L'avatar di SignIn
    SignIn non è in linea Scribacchino
    Luogo
    Milano
    Post
    1,026
    ...per essere sicuro dovrei fare anch'io delle prove...in questo momento non mi viene altro(potresti al massimo mettere com'era prima senza la sezione provider e modificare la chiave nel machine.config, e poi per confermare le modifiche eseguire un iisreset)

  9. #9
    iltheo non è in linea Scolaretto
    Luogo
    Milano
    Post
    61
    Credo proprio che farò come dici.... per il momento ti ringrazio, sempre molto gentile e disponibile... alla prossima...

    Ciao...
    iltheo

+ Rispondi al Thread

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi