다음을 통해 공유


StreamSocket.UpgradeToSslAsync(SocketProtectionLevel, HostName) 메서드

정의

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 메서드는 PlainSocketSocketProtectionLevel을 사용하여 이미 설정된 연결을 업그레이드하는 데만 사용할 수 있습니다.

SSL 연결을 설정하는 일반적인 작업 순서는 다음과 같습니다.

  • StreamSocket을 만듭니다.
  • Control 속성을 사용하여 StreamSocketControl 개체에서 소켓 제어 데이터를 가져와 ConnectAsync 메서드 중 하나를 호출하기 전에 속성을 설정합니다.
  • ConnectAsync 메서드 중 하나를 호출하여 원격 엔드포인트와의 연결을 설정합니다. SSL/TLS 연결이 즉시 필요한 경우 일부 ConnectAsync 메서드를 사용하여 지정할 수 있습니다. 일부 초기 데이터를 보내고 받은 후 SSL/TLS 연결이 필요한 경우 나중에 UpgradeToSslAsync 메서드를 호출하여 SSL을 사용하도록 연결을 업그레이드할 수 있습니다.
  • 원격 호스트에 데이터를 쓸 OutputStream 속성을 가져옵니다.
  • InputStream 속성을 가져와 원격 호스트에서 데이터를 읽습니다.
  • 필요에 따라 데이터를 읽고 씁니다.
  • Close 메서드를 호출하여 보류 중인 작업을 중단하고 StreamSocket 개체와 연결된 관리되지 않는 모든 리소스를 해제합니다. UpgradeToSslAsync 메서드를 사용하려면 연결이 설정된 원격 서버에서 TCP 연결을 SSL 연결로 업그레이드할 수 있어야 합니다.

UpgradeToSslAsync 메서드는 클라이언트 연결에만 사용할 수 있습니다. 이 메서드는 StreamSocketListener 에서 수락한 연결을 SSL 연결로 업그레이드하는 데 사용할 수 없습니다. UpgradeToSslAsync 메서드는 SSL 연결을 수신 대기하고 수락하는 데 필요한 서버 부분이 아니라 SSL 프로토콜 협상의 클라이언트 부분만 구현합니다.

적용 대상

추가 정보