Reset hesla za použití Altairis web security   otázka

C#, ASP.NET WebForms, Bezpečnost

Mám problém, při resetu hesla za pomocí altairis web security.

Používám tento kód:

MembershipUser mu = Membership.GetUser(Request.QueryString["user_name"]);
mu.ChangePassword(mu.ResetPassword(), PassTextBox.Text.ToString());
Membership.UpdateUser(mu);

Bohužel tento kód nic nedělá. Chtěl jsem přidat do web.config enablePasswordReset="true", ale potom mi to vyhodí chybu: Unrecognized configuration attributes found: enablePasswordReset

Kde dělám chybu?

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Proč jako první argument v metodě ChangePassword předáváte nové heslo? Nedává to smysl a dle mého to pak logicky ani fungovat nemůže. Takto chcete změnit heslo,která zadáváte špatně. EnablePasswordReset je povolený atribut,takže jste jej asi špatně umístil. Pošlete Váš web.config ke kontrole.

Jinak doporučuji po sobě kontrolovat kód a hlavně číst MSDN

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Chcel by som upozorniť na jednu vec. Súhlasím, že by pomohlo zverejniť web.config, ale vymažte z web.config všetky heslá vrátane toho v connection stringu.

nahlásit spamnahlásit spam -2 / 2 odpovědětodpovědět

Tak to je snad jasné a logické :-) Popřípadě nahradit zástupnými znaky.

Nicméně pokud jde o testovací projekt,tak je to myslím naprosto jedno. Pochybuji,že by byl přístup do databáze či najiný přístup.bod povolen z internetu.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Ten kód jsem s resetem hesla jsem si vygooglil a našel ho na několika místech. Pokud vím tak změnu hesla když neznám původní heslo jde udělat pouze pomocí resetu hesla ne?

Toto je můj web.config:

<?xml version="1.0"?>
<!--
  For more information on how to configure your ASP.NET application, please visit
  http://go.microsoft.com/fwlink/?LinkId=169433
  -->
<configuration>
    
    <connectionStrings>
        <add name="ConnectionString" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database.mdf;Integrated Security=True;User Instance=True"
            providerName="System.Data.SqlClient" />
    </connectionStrings>
    
    <system.web>

        <httpRuntime maxRequestLength="40000" executionTimeout="120" />
        <customErrors mode="Off" />
        <pages theme="Default"/>
        <authentication mode="Forms" />

        <authorization>
            <allow roles="administrátor" />
            <deny users="*" />
        </authorization>

        <membership defaultProvider="MyMembershipProvider">
            <providers>
                <clear/>
                <add name="MyMembershipProvider"
                    type="Altairis.Web.Security.TableMembershipProvider, Altairis.Web.Security"
                    connectionStringName="ConnectionString" enablePasswordRetrieval="false"
                    enablePasswordReset="true" />
            </providers>
        </membership>

        <roleManager enabled="true" defaultProvider="MyRoleProvider">
            <providers>
                <clear/>
                <add name="MyRoleProvider"
                    type="Altairis.Web.Security.TableRoleProvider, Altairis.Web.Security"
                    connectionStringName="ConnectionString"/>
            </providers>
        </roleManager>
        
        <compilation debug="true" targetFramework="4.0">
            <assemblies>
                <add assembly="System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
                <add assembly="System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
                <add assembly="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
            </assemblies>
        </compilation>
        
    </system.web>
    
</configuration>

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Změna hesla u Altairis provideru funguje pouze pokud je uživatel ověřený (IsApproved == true).

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Zdravim, tiez potrebujem zmenit heslo ked nepoznam povodne.

Ale nemozem pouzit reset hesla cez email. Vie mi niekto poradit ako to obísť.

potrebujem len aby som zadal nové heslo (moze to byt pristupne kludne len pre jedneho uzivatela ako admina) bez nutnosti zadavat povodne heslo.

Tiez pouzivam altairis web security.

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback