UserName   otázka

ASP.NET WebForms

Potřebuji pracovat s UserName již při prvotním zobrazení stránky, ale ať vyzkoušim jakýkoliv z příkazů

username = Request.ServerVariables("AUTH_USER")
username = Page.Request.LogonUserIdentity.Name
username = My.User.Name

je při načítání stránky nepoužitelný, či prázdný.

když je dám pod tlačítko, všechny tři fungují, ale jak pracovat s username při načtení stránky?

dávál jsem to od load až po unload a všude stejný :-(

<authentication mode="Windows"/>

Díky

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

Určitě by mělo být zjištění username až po LoadComplete,v tu chvíli se tuším spouští login process.

Můžu se jen zeptat na co potřebujete v rámci životního cyklu stránky zjištovat username?

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Událost LoadComplete nějak nemůžu najít.

Doménová záležitost na intranetu. UserName je OSČ, dle něj z AD načtu ostatní údaje o uživateli a rád bych zobrazil na stránce jeho jméno, popřípadě data z AD použil pro další účely.

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

Username můžete na stránce zobrazit pomocí komponenty LoginView.Nikdy jsem nepoužíval Windows autentizaci,ale myslím,že by se data z AD dala vytáhnout pomocí profile.GetProfile.Možná pomůže tento odkaz -> http://msdn.microsoft.com/en-us/library/...

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

LoginView zobrazí UserName. V mém případě je UserName číslo, pomocí kterého z AD vytáhnu jméno a další potřebné údaje, tudíž je LoginView pro zobrazení jména na stránce nepoužitelné.

Zkusím ještě bádat jak vytáhnout data z AD přímo, ale bez toho abych znal UserName to nejspíš nepůjde.

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

Login proces se nespouští až v LoadComplete, ten se spouští jako jedna z prvních věcí, dokonce tuším před zahájením zpracování stránky. Co by se stalo, kdyby uživatel neměl ke stránce přístup, ale spustila by se třeba událost OnLoad, která může dělat úpravy v databázi?

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

Pokud chcete pouzit login prihlaseni uzivatele do domeny (tvar "DOMENA\jmeno_uzivatele")

Page.User.Identity.Name

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Ano, to už je 4-tý tvar jak dostat UserName (btw, každý z předešlých vrací tvar doména\login, když se člověk hlásí do domény), ale jako předešlé 3, nevrací mi při načtení stránky žádnou hodnotu, až po, třeba zmáčknutí tlačítka, nebo tak, to vrátí zprávnou hodnotu.

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

Zkuste použít bázovou třídu a přetížit jednu z událostí,např.OnPreInit..nevím jestli je to ta správná metoda,ale za zkoušku nic nedáte.Co se týče další práce s Windows autentizací,tak hodně popisků je na MSDN i když spíš k verzi 2.0,ale základní práce se z toho dá pochopit.

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

Pri nacteni stranky znamena, prvni navsteva stranky ?

Cest jak vypsat username je vic (viz i vase vyse uvedene).

Treba i takto ...

    protected void Page_Load(object sender, EventArgs e)
    {
        Response.Write(WindowsIdentity.GetCurrent().Name);
    }

Mrknete na http://msdn.microsoft.com/en-us/library/... ...

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Odkaz hezky shrnuje co pod kterým zdrojem najít, pěkné, divil jsem že je tolik cest jak získat username, tak to má alespoň nějaké opodstatnění.

Jen tak ze zoufalství, jsem založil nový projekt, tentokrát .NET 2.0 a hle username se mi vpohodě vrací i v Load. Původní projekt byl v .NET 3.5

Je takové chování normální? Mě se nezdá. No každopádně to už funguje alepoň v té 2.0. Zatím nemám potřebu využívat něčeho z 3.5, ale až budu, tak sem zvědav co s tím budu dělat.

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

Tohle bude určitě nějakým nastavením v konfiguraci, není možné, aby se zvýšením verze nějaká funkcionalita ztratila, Microsoft si dává velký pozor na zpětnou kompatibilitu, nehledě na to, že Windows Authentication je jedna z nejzákladnějších featur.

Spíš to bude něčím v konfiguraci, jakmile to tam přidáte, přestane to fungovat. Vemte si web.config z vaší aplikace a nějakým nástrojem si je porovnejte, uvidíte, co je tam navíc, kdyžtak to zkuste postupně přidávat a uvidíte, čím to je.

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