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, 2013, Oracle and/or its affiliates. All rights reserved.