IRTCClient2::put_PreferredSecurityLevel

The put_PreferredSecurityLevel method specifies the security level for each media type that is required for the session. This method is called once for each security level that is set. This method sets the security level that is retrieved by IRTCClient2::get_PreferredSecurityLevel.

HRESULT put_PreferredSecurityLevel(RTC_SECURITY_TYPEenSecurityType,
RTC_SECURITY_LEVELenSecurityLevel);

Parameters

  • enSecurityType
    [in] An RTC_SECURITY_TYPE enumeration specifying the media type that the security levels will be applied to.
  • enSecurityLevel
    [in] An RTC_SECURITY_LEVEL enumeration specifying the level of security that is supported.

Return Values

RTC methods may return an RTC_E_ constant.

Value Meaning
RTC_CLIENT_NOT_INITIALIZED The client object has not been initialized.
RTC_E_MEDIA_DISABLED The media manager has been disabled.
E_INVALIDARG The enSecurityType or enSecurityLevel enumeration value is invalid.

Remarks

Encryption of audio and video streams requires Windows XP. Encryption for data collaboration (RTCMT_T120_SENDRECV) sessions requires Windows XP SP1 or greater.

The security level specified in this method is applied to all future sessions created on the Client object. This setting can be overridden on a per-session basis by calling the IRTCSession2::put_PreferredSecurityLevel method.

Note  The encryption key is sent over the SIP signaling channel. This key can be acquired by an attacker if the SIP signaling channel is not encrypted. The signaling channel can be encrypted by using the TLS transport.

Requirements

Redistributable: Requires Rtcdll.dll on Windows XP and Windows Server 2003.
Header: Declared in Rtccore.h.
Library: Included as a resource in Rtcdll.dll.
GUID: IID_IRTCClient2 is defined as 0C91D71D-1064-42da-BFA5-572BEB8EEA84.

See Also

IRTCClient2, IRTCClient2::get_PreferredSecurityLevel, RTC_SECURITY_LEVEL, RTC_SECURITY_TYPE, Security, Set the Security Level for the Client Object