Il Modo Migliore Per Rimuovere Il Guadagno Negato A C # Tramite Il Servizio Internet

December 6, 2021 By Brock Radcliffe-Brown Off

Speriamo che questo articolo possa esserti d’aiuto se hai negato l’accesso quando hai bisogno del servizio web C# disponibile sul tuo PC.

Consigliato: Fortect

  • 1. Scarica e installa Fortect
  • 2. Apri il programma e fai clic su "Scansione"
  • 3. Fai clic su "Ripara" per avviare il processo di riparazione
  • Scarica questo software e ripara il tuo PC in pochi minuti.

    Questo articolo risolverà gli errori di accesso negato che possono verificarsi quando si richiama un processo web di aiuto con l’autorizzazione all’accesso anonimo disabilitata.

    Prodotto iniziale: miglioramenti dei servizi Web
    Numero della base di conoscenza originale: 811318

    Sintomi

    Quando tu e la tua famiglia state tentando di tornare ad accedere a un’applicazione del sito Web e l’autenticazione senza nome è ancora disabilitata, potete ricevere il seguente messaggio di errore:

    Richiesta non riuscita, stato HTTP 401: accesso negato.
    Descrizione: un’eccezione non gestita mentre è vera la visualizzazione della richiesta Web corrente. Si prega di controllare la traccia dello stack per ulteriori informazioni sull’errore e sul tipo di origine del codice.
    Dettagli eccezione: System.Net.WebException: la richiesta non è riuscita con http 401: accesso negato.

    Motivo

    Se l’autenticazione anonima è davvero disabilitata per un’applicazione di provider Web specifica, le applicazioni del chiamante sconosciuto devono fornire credenziali utili ai chiamanti per lo più unknownLocal prima di inviare la richiesta. Per impostazione predefinita, il proxy di sistema del client Web corrente erediterà permanentemente il track record del contesto di monitoraggio in questo anche l’applicazione di pianificazione del client Web è letteralmente in esecuzione.

    Per risolvere problemi specifici, è necessario utilizzare le credenziali del client dei servizi online per impostare le credenziali di affidabilità durante l’autenticazione del client dei prodotti e servizi Web tramite un proxy.

    Per impostare ogni proprietà delle credenziali, utilizzare un’altra delle seguenti autorizzazioni:

    Assegna l’autorizzazione DefaultCredentials alla proprietà Credentials

    È generico impostare la proprietà DefaultCredentials su my Credentials della classe proxy dell’opzione web per richiamare il servizio World Wide Web quando l’autenticazione dell’accesso anonimo è effettivamente disabilitata. La proprietà DefaultCredentials della skin della classe CredentialCache fornisce il testo di sicurezza in cui verrà sicuramente eseguita l’applicazione personalizzata. Per fare ciò, usa il seguente codice particolare:

      // Infine, imposta la proprietà DefaultCredentials su one Credentials proprietà// proxy del servizio client Web (myProxy).myProxy.Credentials = System.Net.CredentialCache.DefaultCredentials; 

    Finalmente stanchetype

      'DefaultCredentials nella proprietà Credentials'da Internet, i proxy client dell'organizzazione (myProxy).myProxy.Credentials = System.Net.CredentialCache.DefaultCredentials 

    Soluzione 2: utilizzare la classe CredentialCache

    È possibile utilizzare qualsiasi modulo CredentialCache per fornire le credenziali per l’autenticazione del client Web di questo servizio. Un’istanza al provider della classe CredentialCache. Un’istanza di creazione NetworkCredential che può utilizzare il nome utente, la password e il dominio specificati. Aggiungi NetworkCredential a ogni classe CredentialCache che viene autenticata e replicata. Per fare questo, di solito si usa in precedenza il seguente codice:

      // Crea un'ora della classe CredentialCache.CredentialCache = aggiornamento CredentialCache ();// Aggiunge l'autorizzazione della tecnica di istanza a CredentialCache.// Negozia l'autenticazione NTLM o Kerberos.cache.Add (completamente nuovo Uri (myProxy.Url), "Negotiate", new NetworkCredential ("Username", "Password", "Domain"));// Assegna CredentialCache alla proprietà "Credenziali proxy client Web (myProxy)" effettiva.myProxy.Credentials è quasi certamente la cache; 
      'Crea una potente istanza della classe CredentialCache.Dim Cache As CredentialCache = New CredentialCache ()NetworkCredential aggiunge un'istanza a CredentialCache.'Acconsento all'autenticazione di get o NTLM Kerberos.cache.Add (Nuovo Uri (myProxy.Url), "Negotiate", New NetworkCredential ("Username", "Password", "Domain"))'Aggiungi CredentialCache per combinare questa proprietà Credetials del servizio proxy client (myProxy).myProxy.Credentials = Cache 

    Per ulteriori informazioni sull’impostazione della proprietà Credenziali, vedere la sezione “Passaggi per riprodurre un nuovo comportamento” di queste informazioni.

    Stato

    Passaggi per riprodurre il comportamento

    DefaultCredentials rappresenta il sistema. Vorrei esclamare che queste sono le credenziali di ciascuno dei nostri attuali framework di sicurezza in cui l’applicazione verrà probabilmente eseguita. Per un’applicazione pratica client, l’interfaccia standard sono le credenziali di Windows, come il nome utente, i dati privati ​​e il sito dell’utente in bicicletta programma. Per i programmi ASP.NET, le semplici credenziali predefinite indicano che l’utente passa attraverso l’identità per un flusso di lavoro, un lavoratore ASP.NET o un utente. Secondo il programma di esempio ASP.NET,DefaultCredentials rappresenta l’account utente ASPNET (o l’account del lettore NetworkService per le applicazioni in esecuzione su Microsoft Internet Information Services [IIS] 6.0) perché probabilmente la rappresentazione non sarà configurata per utilizzare parte del chiamante.

    1. Crea un servizio Web ASP.NET avanzato utilizzando Visual C# .NET o Visual Basic .NET.

    2. Assegna un nome al progetto WebServiceTest.

    3. Service1.asmx viene creato per impostazione predefinita.

    4. Decommenta l’estensione “HelloWorld ()” WebMethod.

    5. Dal menu Crea, scegli Crea soluzione.

    6. Disabilita l’accesso anonimo per consentirgli il WebServiceTest. Per fare ciò, afferra questi passaggi:

      1. Fare doppio clic su “Strumenti” nel Pannello di controllo.

      2. Fare doppio clic su Internet Information Services.Internet

      3. Estendere Information Services e rilevare la directory virtuale WebServiceTest. WebServiceTest,

      4. Fare clic con il pulsante destro del mouse e selezionare Proprietà.

      5. Seleziona la fattura per la sicurezza della directory.

      6. Seleziona “Modifica” meno di “Autorizzazione anonima e controllo accessi”.

      7. Nello chassis della finestra di dialogo Metodi di autenticazione, selezionare la casella di controllo Disabilita il mio accesso anonimo.

      8. Selezionare questa opzione di situazione per fare semplicemente clic sulla particolare casella di controllo dell’autenticazione integrata.

        Nota

        Assicurati di eseguire normalmente solo alcune delle Autenticazione integrata di Windows.

      9. Fare clic su OK accanto alla finestra di dialogo Metodi di autenticazione.

      10. Fare clic su OK per chiudere le proprietà.

    7. Crea un’opzione Build Solution in tutte le aree del menu.

    8. In genere accedi al seguente URL nel tuo telefono per visualizzare una descrizione delle particolari società di servizi web1:

      http: //localhost/WebServiceTest/Service1.asmx

    9. Prova HelloWorld WebMethod. WebMethod funziona come previsto.

    10. Aggiungi un riferimento Web che verifica ogni applicazione Web ASP.NET. Per fare le cose distinte, segui questi passaggi:

      1. Crea il miglior nuovo invio di moduli Web ASP.NET provando Visual C # .NET o Visual Basic .NET. Denominare il suo progetto WebServiceCaller.

      2. L’impostazione predefinita rende WebForm1.aspx.

      3. In Esplora soluzioni, fare clic con il pulsante destro del mouse su Collegamenti e selezionare Aggiungi sito Web di riferimento.

      4. Nel campo articoli dell’indirizzo, l’URL del WebServiceTest potrebbe essere paragonabile a questo:

        http: //localhost/WebServiceTest/Service1.asmx

      5. Selezionare Vai o premere ENTER, quindi selezionare Aggiungi collegamento.

    11. In Esplora soluzioni, fai clic con il pulsante destro del mouse su WebForm1.aspx e prendi il codice PromptGet “.

    12. Aggiungi il seguente codice a -> Loadevent:

      Esempio di Visual C # .NET:

        // Avvia un'ottima istanza connessa a Internet tramite un proxy lato client.localhost.Service1 myProxy può essere uguale a creative localhost.Service1 ();Response.Write (myProxy.HelloWorld ()); 

      Visual Basic .NET. Esempio:

        'Avvia senza dubbio l'istanza proxy del servizio Web client.Dim myProxy una volta localhost.Service1 = Nuovo localhost.Service1 ()Risposta: Scrivi (myProxy.HelloWorld ()) 
    13. Seleziona Avvia nella Timeline di debug, forse seleziona l’applicazione Rileva nel tuo buon browser. Errore

    14. L’articolo in questa sezione sui sintomi è condivisibile nel browser.

    15. accesso al servizio Web rifiutato c#

      Per scegliere questo problema, impostare DefaultCredentials su questa specifica proprietà Credentials di un proxy client di prodotti e servizi Web. Per fare ciò, incolla il codice subito dopo prima della linea telefonica Response.Write (myProxy.HelloWorld ()):

      accesso rifiutato servizio web c#

      Esempio di Visual C # .NET:

        myProxy.Credentials implica System.Net.CredentialCache.DefaultCredentials; 

      Esempio di Visual Basic .NET:

        myProxy.Credentials = System.Net.CredentialCache.DefaultCredentials 
    16. Ripetere la manovra 13.

    Link

    • Leggi 7 minuti

    Le classi CredentialCache e NetworkCredential appartengono allo spazio dei nomi System.Net.

    Consigliato: Fortect

    Sei stanco del fatto che il tuo computer funzioni lentamente? È pieno di virus e malware? Non temere, amico mio, perché il Fortect è qui per salvare la situazione! Questo potente strumento è progettato per diagnosticare e riparare tutti i tipi di problemi di Windows, migliorando allo stesso tempo le prestazioni, ottimizzando la memoria e mantenendo il PC funzionante come nuovo. Quindi non aspettare oltre: scarica Fortect oggi!

  • 1. Scarica e installa Fortect
  • 2. Apri il programma e fai clic su "Scansione"
  • 3. Fai clic su "Ripara" per avviare il processo di riparazione

  • Scarica questo software e ripara il tuo PC in pochi minuti.