StreamSocket.UpgradeToSslAsync(SocketProtectionLevel, HostName) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
StreamSocket オブジェクトで SSL を使用するように接続されているソケットをアップグレードする非同期操作を開始します。
public:
virtual IAsyncAction ^ UpgradeToSslAsync(SocketProtectionLevel protectionLevel, HostName ^ validationHostName) = UpgradeToSslAsync;
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncAction UpgradeToSslAsync(SocketProtectionLevel const& protectionLevel, HostName const& validationHostName);
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncAction UpgradeToSslAsync(SocketProtectionLevel protectionLevel, HostName validationHostName);
function upgradeToSslAsync(protectionLevel, validationHostName)
Public Function UpgradeToSslAsync (protectionLevel As SocketProtectionLevel, validationHostName As HostName) As IAsyncAction
パラメーター
- protectionLevel
- SocketProtectionLevel
StreamSocket オブジェクトの整合性と暗号化を表す保護レベル。
- validationHostName
- HostName
SSL にアップグレードするときに検証に使用されるリモート ネットワーク宛先のホスト名。
戻り値
StreamSocket オブジェクトで SSL を使用するようにアップグレードする非同期操作。
- 属性
Windows の要件
アプリの機能 |
ID_CAP_NETWORKING [Windows Phone]
|
注釈
UpgradeToSslAsync メソッドは、PlainSocket の SocketProtectionLevel で確立された接続をアップグレードする場合にのみ使用できます。
SSL 接続を確立する操作の一般的な順序は次のとおりです。
- StreamSocket を作成します。
- Control プロパティを使用して StreamSocketControl オブジェクトのソケット コントロール データを取得し、ConnectAsync メソッドのいずれかを呼び出す前にプロパティを設定します。
- ConnectAsync メソッドのいずれかを呼び出して、リモート エンドポイントとの接続を確立します。 SSL/TLS 接続がすぐに必要な場合は、 ConnectAsync メソッドの一部を使用してこれを指定できます。 初期データを送受信した後に SSL/TLS 接続が必要な場合は、後で UpgradeToSslAsync メソッドを呼び出して、SSL を使用するように接続をアップグレードできます。
- OutputStream プロパティを取得して、リモート ホストにデータを書き込みます。
- InputStream プロパティを取得して、リモート ホストからデータを読み取ります。
- 必要に応じて、データの読み取りと書き込みを行います。
- 保留中の操作を中止し、StreamSocket オブジェクトに関連付けられているすべてのアンマネージ リソースを解放するには、Close メソッドを呼び出します。 UpgradeToSslAsync メソッドでは、接続が確立されたリモート サーバーが TCP 接続を SSL 接続にアップグレードできる必要があります。
UpgradeToSslAsync メソッドは、クライアント接続にのみ使用できます。 このメソッドを使用して、 StreamSocketListener によって受け入れられる接続を SSL 接続にアップグレードすることはできません。 UpgradeToSslAsync メソッドは、SSL プロトコル ネゴシエーションのクライアント部分のみを実装します。SSL 接続をリッスンして受け入れるのに必要なサーバー 部分は実装しません。