System.Diagnostics: come accedere usando un'identità
-
20-08-2019 - |
Domanda
Ho implementato la traccia basata su System.Diagnostics.
Sto anche usando System.Diagnostics.TextWriterTraceListener e ho collegato l'intera traccia a un'applicazione Web MOSS 2007.
La traccia per qualche motivo sta provando a (a) creare il file di registro e / o (b) scrivere nel file di registro utilizzando l'utente che sta attualmente navigando nel sito di SharePoint , c'è un modo per configurare la registrazione per utilizzare un account utente specifico invece?
Soluzione
Ovviamente MOSS è configurato per usare l'autenticazione di Windows (Kerberos) e la rappresentazione. Se non è necessario impersonare l'utente corrente connesso a Moss, disattivare la rappresentazione (è in web.config). Scoprirai che i file di registro verranno creati e scritti dall'utente in base al quale è in esecuzione il pool di applicazioni dell'installazione di Moss.
Se DEVI usare la rappresentazione, un'altra soluzione è quella di dare a tutti i diritti di creare e scrivere file nella directory dei log (e SOLO nella directory dei log). Questa non è esattamente la migliore idea, comunque. Puoi non autorizzare le autorizzazioni di lettura per tutti tranne quelli che hanno bisogno di leggere i registri, ma dovrai comunque preoccuparti delle persone che cercano di farti riempiendo il disco.
La terza scelta è, prima di accedere, cambiare identità. Qualcosa del genere potrebbe funzionare:
var wic = WindowsIdentity.Impersonate(IntPtr.Zero); // "revert to self"
/* LOG GOES HERE K */
wic.Undo(); // return to impersonation
BIG CAVEAT: Sto solo imparando queste cose da solo, quindi il codice sopra potrebbe non funzionare affatto. In tal caso, è dolce perché non dovrai fare p / invocare per accedere alla tua identità di scrittura del log, il che significa anche che non dovrai creare quell'utente e archiviare la sua password in chiaro nella tua applicazione.
Mi chiedo dove sia il vecchio Skeeter su questo? La sicurezza di Windows richiede un pesante sollevamento; Sto iniziando con il bar proprio ora ...
Altri suggerimenti
Per favore, non dirmi che è necessario - http: // www .15seconds.com / emissione / 040511.htm? voteresult = 5