public abstract class Authenticator extends Object
アプリケーションは、サブクラスでgetPasswordAuthentication()
をオーバーライドすることでこのクラスを使用します。このメソッドは、通常、さまざまなgetXXX()アクセス用メソッドを使用して、認証を要求しているエンティティに関する情報を取得します。次に、ユーザーとの対話、またはその他の対話以外の方法で、ユーザー名とパスワードを取得する必要があります。その後、PasswordAuthentication
の戻り値として、資格が返されます。
次に、setDefault(Authenticator)
を呼び出すことで、この具象サブクラスのインスタンスがシステムに登録されます。認証が必要な場合、システムはrequestPasswordAuthentication()メソッドの1つを呼び出し、これが登録されたオブジェクトのgetPasswordAuthentication()メソッドを呼び出します。
認証を要求するメソッドはすべて、失敗に終わるデフォルト実装を持っています。
setDefault(java.net.Authenticator)
, getPasswordAuthentication()
修飾子と型 | クラスと説明 |
---|---|
static class |
Authenticator.RequestorType
認証を要求しているエンティティのタイプ。
|
コンストラクタと説明 |
---|
Authenticator() |
修飾子と型 | メソッドと説明 |
---|---|
protected PasswordAuthentication |
getPasswordAuthentication()
パスワード認証が必要な場合に呼び出されます。
|
protected String |
getRequestingHost()
認証を要求しているサイトまたはプロキシの
hostname を取得します。入手できない場合はnull が返されます。 |
protected int |
getRequestingPort()
要求された接続に使うポート番号を取得します。
|
protected String |
getRequestingPrompt()
要求者が入力したプロンプト文字列を取得します。
|
protected String |
getRequestingProtocol()
接続を要求しているプロトコルを返します。
|
protected String |
getRequestingScheme()
要求者が使用している方式(たとえば、HTTPファイアウォールの場合はHTTP方式)。
|
protected InetAddress |
getRequestingSite()
許可を要求しているサイトの
InetAddress を取得します。入手できない場合はnull が返されます。 |
protected URL |
getRequestingURL()
この認証要求の結果であるURLを返します。
|
protected Authenticator.RequestorType |
getRequestorType()
要求者がプロキシかサーバーかを返します。
|
static PasswordAuthentication |
requestPasswordAuthentication(InetAddress addr, int port, String protocol, String prompt, String scheme)
システムに登録されているオーセンティケータに、パスワードを要求します。
|
static PasswordAuthentication |
requestPasswordAuthentication(String host, InetAddress addr, int port, String protocol, String prompt, String scheme)
システムに登録されているオーセンティケータに、パスワードを要求します。
|
static PasswordAuthentication |
requestPasswordAuthentication(String host, InetAddress addr, int port, String protocol, String prompt, String scheme, URL url, Authenticator.RequestorType reqType)
システムに登録されているオーセンティケータに、パスワードを要求します。
|
static void |
setDefault(Authenticator a)
オーセンティケータを設定します。このオーセンティケータは、プロキシ・サーバーまたはHTTPサーバーからオーセンティケータを要求されたときに、ネットワーク・コードが使います。
|
public static void setDefault(Authenticator a)
まず、セキュリティ・マネージャが存在する場合は、そのcheckPermission
メソッドがNetPermission("setDefaultAuthenticator")
アクセス権で呼び出されます。この結果、java.lang.SecurityExceptionになることがあります。
a
- 設定されるオーセンティケータ。aがnull
の場合、以前に設定されたオーセンティケータは削除されます。SecurityException
- セキュリティ・マネージャが存在し、そのcheckPermission
メソッドがデフォルト・オーセンティケータの設定を許可しない場合。SecurityManager.checkPermission(java.security.Permission)
、NetPermission
public static PasswordAuthentication requestPasswordAuthentication(InetAddress addr, int port, String protocol, String prompt, String scheme)
まず、セキュリティ・マネージャが存在する場合は、そのcheckPermission
メソッドがNetPermission("requestPasswordAuthentication")
アクセス権で呼び出されます。この結果、java.lang.SecurityExceptionになることがあります。
addr
- 認証を要求しているサイトのInetAddress。不明の場合はnull。port
- 要求された接続に使うポート番号protocol
- 接続を要求しているプロトコル(getRequestingProtocol()
)。prompt
- ユーザーに表示されるプロンプト文字列scheme
- 認証スキームSecurityException
- セキュリティ・マネージャが存在し、そのcheckPermission
メソッドがパスワード認証要求を許可しない場合。SecurityManager.checkPermission(java.security.Permission)
、NetPermission
public static PasswordAuthentication requestPasswordAuthentication(String host, InetAddress addr, int port, String protocol, String prompt, String scheme)
まず、セキュリティ・マネージャが存在する場合は、そのcheckPermission
メソッドがNetPermission("requestPasswordAuthentication")
アクセス権で呼び出されます。この結果、java.lang.SecurityExceptionになることがあります。
host
- 認証を要求しているサイトのホスト名。addr
- 認証を要求しているサイトのInetAddress。InetAddressが不明の場合はnull。port
- 要求された接続に使うポート番号。protocol
- 接続を要求しているプロトコル(getRequestingProtocol()
)。prompt
- 認証領域を識別する、ユーザーに表示されるプロンプト文字列。scheme
- 認証スキームSecurityException
- セキュリティ・マネージャが存在し、そのcheckPermission
メソッドがパスワード認証要求を許可しない場合。SecurityManager.checkPermission(java.security.Permission)
、NetPermission
public static PasswordAuthentication requestPasswordAuthentication(String host, InetAddress addr, int port, String protocol, String prompt, String scheme, URL url, Authenticator.RequestorType reqType)
まず、セキュリティ・マネージャが存在する場合は、そのcheckPermission
メソッドがNetPermission("requestPasswordAuthentication")
アクセス権で呼び出されます。この結果、java.lang.SecurityExceptionになることがあります。
host
- 認証を要求しているサイトのホスト名。addr
- 認証を要求しているサイトのInetAddress。不明の場合はnull。port
- 要求された接続に使うポート番号protocol
- 接続を要求しているプロトコル(getRequestingProtocol()
)。prompt
- ユーザーに表示されるプロンプト文字列scheme
- 認証スキームurl
- 認証を発生させた要求元のURL。reqType
- 認証を要求しているエンティティのタイプ(サーバーまたはプロキシ)。SecurityException
- セキュリティ・マネージャが存在し、そのcheckPermission
メソッドがパスワード認証要求を許可しない場合。SecurityManager.checkPermission(java.security.Permission)
、NetPermission
protected final String getRequestingHost()
hostname
を取得します。入手できない場合はnull
が返されます。protected final InetAddress getRequestingSite()
InetAddress
を取得します。入手できない場合はnull
が返されます。protected final int getRequestingPort()
int
。protected final String getRequestingProtocol()
URL.getProtocol()
protected final String getRequestingPrompt()
protected final String getRequestingScheme()
protected PasswordAuthentication getPasswordAuthentication()
protected URL getRequestingURL()
protected Authenticator.RequestorType getRequestorType()
バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.