Al momento sei offline in attesa che la connessione Internet venga ristabilita

FIX: "accesso negato" messaggio di errore quando si tenta di accedere a servizio di indicizzazione da ASP.NET con la rappresentazione attivata

Il presente articolo è stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell’utente. Tuttavia, un articolo tradotto in modo automatico non è sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, più o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non è la sua. Microsoft non è responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell’utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.

Clicca qui per visualizzare la versione originale in inglese dell’articolo: 323293
Dichiarazione di non responsabilità per articoli della Microsoft Knowledge Base su prodotti non più supportati
Questo articolo è stato scritto sui prodotti per cui Microsoft non offre più supporto. L’articolo, quindi, viene offerto ‘così come è’ e non verrà più aggiornato.
Sintomi
Quando esegue una ricerca in Index Server tramite una pagina ASP.NET, è può visualizzato il seguente messaggio di errore:
Accesso negato. Descrizione: Si è verificata un'eccezione non gestita durante l'esecuzione della richiesta web corrente. Eseguire l'analisi dello stack per ulteriori informazioni sull'errore e in cui ha avuto origine nel codice.

Dettagli eccezione: System.Data.OleDb.OleDbException: accesso negato.
Questo comportamento è osservato solo se si attiva la rappresentazione per l'applicazione Web ASP.NET e il contesto di protezione in cui il processo di lavoro ASP.NET (Aspnet_wp.exe) viene eseguito è l'account ASPNET.
Risoluzione

Informazioni sul Service pack

Per risolvere il problema, ottenere il service pack più recente per Microsoft Windows 2000. Per ulteriori informazioni, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
260910Come ottenere il service pack più recente per Windows 2000
Workaround
Per aggirare il problema, utilizzare uno dei seguenti metodi:
  • Disattivare la rappresentazione per l'intera applicazione Web ASP.NET. Questo è l'impostazione predefinita.
  • Disattivare la rappresentazione solo per la pagina aspx particolare che esegue la ricerca di Index Server. A tale scopo, aggiungere un tag <location> nel file Web.config come segue:
    <location path="filename.aspx"><system.web>   <identity impersonate="false" /></system.web></location>					
Se queste soluzioni alternative non sono accettabili per l'utente, è possibile modificare il contesto di protezione in cui il processo di lavoro ASP.NET viene eseguito all'account SYSTEM. Tuttavia, non è consigliabile impostare il contesto di protezione del processo di lavoro di ASP.NET all'account SYSTEM perché l'account SYSTEM è un account con privilegiato elevati di amministratore sul computer server Web. Utilizzare questa soluzione solo se nessuna delle altre soluzioni alternative sono accettabile per l'utente.

Per modificare il contesto di protezione in cui viene eseguito il processo di lavoro di ASP.NET, impostare l'attributo di userName su SYSTEM e quindi impostare l'attributo password autogenerato nel <processmodel> sezione del file Machine.config. Il file di Machine.config si trova nella cartella \Microsoft.Net\Framework\v1.0.3705\Config C:\ Windows Directory.
Status
Microsoft ha confermato che questo un bug nei prodotti sono elencati nella sezione "Si applica a".Questo problema è stato risolto in ASP.NET (incluso in .NET Framework) 1.1. Microsoft ha confermato che questo un problema di Microsoft Windows 2000. Questo problema è stato innanzitutto corretto in Microsoft Windows 2000 Service Pack 4.
Informazioni

Procedura per riprodurre il problema.

  1. Avviare Microsoft Visual Studio .NET.
  2. Creare un'applicazione Web ASP.NET.
  3. Aggiungere il codice seguente nel codice HTML di una pagina aspx:
    <%@ Page language="c#" %><%            System.Data.OleDb.OleDbConnection conn = new System.Data.OleDb.OleDbConnection("provider=msidxs;");            conn.Open();            string Sql = "Select DocTitle, vpath, characterization, rank from Scope(' DEEP TRAVERSAL OF \"C:\\\" ')  where FREETEXT(' \"ticket\" ') order by rank desc";            System.Data.OleDb.OleDbDataAdapter da = new System.Data.OleDb.OleDbDataAdapter(Sql, conn);            System.Data.DataSet ds = new System.Data.DataSet();            da.Fill(ds, "SearchResults");            Response.Write("Search Results: <br>");            for (int i = 0; i < ds.Tables[0].Rows.Count; i++)            {                        Response.Write("<br>" + ds.Tables[0].Rows[i]["vpath"].ToString());            }%>					
  4. Modificare il file Web.config per attivare la rappresentazione nel modo seguente:
    <identity impersonate="true" />					
  5. Assicurarsi che il contesto di protezione in cui il processo di lavoro Aspnet_wp.exe viene eseguito sia l'account ASPNET. Per effettuare questa operazione, impostare l'attributo userName su computer e quindi impostare l'attributo password per autogenerato nel <processmodel> sezione del file Machine.config.

    Nota Per impostazione predefinita, il processo di lavoro di ASP.NET è impostato per l'esecuzione con il contesto di protezione dell'account ASPNET con restrizioni.
  6. Avviare il servizio di indicizzazione nel computer.
  7. Generare l'applicazione e quindi aprire la pagina aspx nel browser. Si noti che è visualizzato il messaggio di errore è elencato nella sezione "Sintomi".
Riferimenti
Per ulteriori informazioni sulla rappresentazione in ASP.NET, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
306158Come implementare la rappresentazione in un'applicazione ASP.NET
Per ulteriori informazioni sull'identità del processo di lavoro ASP.NET, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
317012Identità di processo e della richiesta in ASP.NET

Avviso: questo articolo è stato tradotto automaticamente

Proprietà

ID articolo: 323293 - Ultima revisione: 07/05/2006 15:50:24 - Revisione: 3.1

Microsoft ASP.NET 1.0, Microsoft Index Server 2.0, Microsoft OLE DB Provider for Index Server 3.0

  • kbmt kbhotfixserver kbqfe kbwin2ksp4fix kbother kbfix kbbug kbconfig kbnofix kbsecurity KB323293 KbMtit
Feedback
/html>>