2012-01-05 7 views
9

Se impersono un utente nel web.con ma l'applicazione viene eseguita in un pool di applicazioni che utilizza un'altra identità, quale identità verrebbe utilizzata quando si accede alle risorse (ad esempio file) sul server?asp.net web.config impersonificazione o identità del pool di applicazioni

Un'altra domanda, è possibile eseguire una pagina con un'identità separata dal resto dell'applicazione?

+0

stiamo parlando IIS5, 6 o 7? – Kev

+1

parlami di entrambi – developer747

risposta

0

1) In web.config.

2) Si può fare la rappresentazione in codice dietro: http://support.microsoft.com/kb/306158

o Another article

+0

Quindi, se impersono in web.config, l'identità del pool di applicazioni non ha senso? – developer747

+1

Non esattamente, in realtà web.config sovrascrive l'identità del pool di applicazioni. Un pool di applicazioni può essere utilizzato per più di un sito. Con web.config puoi specificare l'identità per sito. Quindi utilizzando l'identità AppPool funzionerà, ma in genere si consiglia di utilizzare web.config. –

11

Quando si accede alle risorse sul server l'utente sarà quello indicato dalla configurazione di rappresentazione non quella sulla domanda pool

Impersonificazione abilitata per un'identità specifica. In questo caso, ASP.NET rappresenta il token generato utilizzando un'identità specificata nel file Web.config.

<identity impersonate="true" 
     userName="domain\user" 
     password="password" /> 

rappresentazione abilitato. In questo caso, ASP.NET rappresenta il token passato ad esso da IIS, che è un utente autenticato o l'account utente Internet anonimo.

<identity impersonate="true" /> 

Fonte: MSDN

Nel caso in cui siete interessati, here si dispone di un articolo con una matrice di identità per i diversi scenari di rappresentare.

E sì, si può impersonare programatically come Alex Dn detto

+0

Quindi, se ogni app in esecuzione in un pool di applicazioni sta impersonando un utente specifico, l'identità del pool di applicazioni non ha senso? – developer747

+0

@ user1110437: sì, per accedere a risorse "esterne" l'utente del pool di app non è rilevante (quando impersonate = true). –

+0

quando dici esterno, intendi all'esterno dell'app o sul server? – developer747