Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quelle  nsIHttpChannelAuthProvider.idl   Sprache: unbekannt

 
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* vim: set sw=2 ts=8 et tw=80 : */
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

#include "nsICancelable.idl"

interface nsIHttpChannel;
interface nsIHttpAuthenticableChannel;

/**
 * nsIHttpChannelAuthProvider
 *
 * This interface is intended for providing authentication for http-style
 * channels, like nsIHttpChannel and nsIWebSocket, which implement the
 * nsIHttpAuthenticableChannel interface.
 *
 * When requesting pages AddAuthorizationHeaders MUST be called
 * in order to get the http cached headers credentials. When the request is
 * unsuccessful because of receiving either a 401 or 407 http response code
 * ProcessAuthentication MUST be called and the page MUST be requested again
 * with the new credentials that the user has provided. After a successful
 * request, checkForSuperfluousAuth MAY be called, and disconnect MUST be
 * called.
 */

[uuid(788f331b-2e1f-436c-b405-4f88a31a105b)]
interface nsIHttpChannelAuthProvider : nsICancelable
{
  /**
   * Initializes the http authentication support for the channel.
   * Implementations must hold a weak reference of the channel.
   */
  [must_use] void init(in nsIHttpAuthenticableChannel channel);

  /**
   * Upon receipt of a server challenge, this function is called to determine
   * the credentials to send.
   *
   * @param httpStatus
   *        the http status received.
   * @param sslConnectFailed
   *        if the last ssl tunnel connection attempt was or not successful.
   * @param callback
   *        the callback to be called when it returns NS_ERROR_IN_PROGRESS.
   *        The implementation must hold a weak reference.
   *
   * @returns NS_OK if the credentials were got and set successfully.
   *          NS_ERROR_IN_PROGRESS if the credentials are going to be asked to
   *                               the user. The channel reference must be
   *                               alive until the feedback from
   *                               nsIHttpAuthenticableChannel's methods or
   *                               until disconnect be called.
   */
  [must_use] void processAuthentication(in unsigned long httpStatus,
                                        in boolean sslConnectFailed);

  /**
   * Add credentials from the http auth cache.
   *
   * @param dontUseCachedWWWCreds
   *    When true, the method will not add any Authorization headers from
   *    the auth cache.
   */
  [must_use] void addAuthorizationHeaders(in boolean dontUseCachedWWWCreds);

  /**
   * Check if an unnecessary(and maybe malicious) url authentication has been
   * provided.
   */
  [must_use] void checkForSuperfluousAuth();

  /**
   * Cancel pending user auth prompts and release the callback and channel
   * weak references.
   */
  [must_use] void disconnect(in nsresult status);

  /**
   * Clear the proxy ident to not consider it invalid on re-athentication.
   * Called when the channel finds out its transaction has been internally
   * restarted.
   */
  void clearProxyIdent();
};

[ Dauer der Verarbeitung: 0.17 Sekunden  (vorverarbeitet)  ]

                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge