SetContextAttributesA 関数 (sspi.h)
トランスポート アプリケーションがセキュリティ パッケージのセキュリティ コンテキストの属性を設定できるようにします。 この関数は、Schannel セキュリティ パッケージでのみサポートされます。
構文
SECURITY_STATUS SEC_ENTRY SetContextAttributesA(
[in] PCtxtHandle phContext,
[in] unsigned long ulAttribute,
[in] void *pBuffer,
[in] unsigned long cbBuffer
);
パラメーター
[in] phContext
設定するセキュリティ コンテキストへのハンドル。
[in] ulAttribute
設定するコンテキストの属性。 このパラメーターには、次の値のいずれかを指定できます。
値 | 説明 |
---|---|
|
pBuffer パラメーターには、SecPkgContext_SessionAppData構造体へのポインターが含まれています。
セッションのアプリケーション データを設定します。 この属性は、Schannel セキュリティ パッケージでのみサポートされます。 |
|
pBuffer パラメーターには、SecPkgContext_EapPrfInfo構造体へのポインターが含まれています。
拡張認証プロトコル (EAP) で使用される擬似ランダム関数 (PRF) を設定します。 これは、SECPKG_ATTR_EAP_KEY_BLOCKが ulAttribute パラメーターの値として渡されるときに、QueryContextAttributes (Schannel) 関数の呼び出しによって返される値です。 この属性は、Schannel セキュリティ パッケージでのみサポートされます。 |
|
pBuffer パラメーターには、SecPkgContext_EarlyStart構造体へのポインターが含まれています。
False 開始機能を設定します。 この機能の詳細については、 より高速で安全な Web の構築 に関するブログ記事を参照してください。 |
|
DTLS で使用する MTU (最大伝送単位) の値を設定および取得します。
セキュリティ コンテキストで DTLS が有効になっていない場合、この属性はサポートされません。
有効な値は、200 バイトから 64 キロバイトの間です。 Schannel の既定の DTLS MTU 値は 1096 バイトです。 |
|
pBuffer パラメーターには、SecPkgContext_KeyingMaterialInfo構造体へのポインターが含まれています。 キーマテリアルエクスポート機能は RFC 5705 標準に従います。
この属性は、Windows 10 および Windows Server 2016 以降のバージョンの Schannel セキュリティ パッケージでのみサポートされます。 |
[in] pBuffer
属性を設定する値を含む構造体へのポインター。 指し示される構造体の型は、 ulAttribute パラメーターで指定された値によって異なります。
[in] cbBuffer
pBuffer パラメーターのサイズ (バイト単位)。
戻り値
関数が成功した場合、関数はSEC_E_OKを返します。
関数が失敗すると、0 以外のエラー コードが返されます。 次のエラー コードは、考えられるエラー コードの 1 つです。
リターン コード | 説明 |
---|---|
|
この値は、この関数がサポートされていないことを示すために、Schannel カーネル モードによって返されます。 |
解説
注意
sspi.h ヘッダーは、SetContextAttributes をエイリアスとして定義し、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択します。 encoding-neutral エイリアスの使用を encoding-neutral ではないコードと混在すると、コンパイル エラーまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。
要件
サポートされている最小のクライアント | Windows XP (デスクトップ アプリのみ) |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
対象プラットフォーム | Windows |
ヘッダー | sspi.h (Security.h を含む) |
Library | Secur32.lib |
[DLL] | Secur32.dll |