SecMakeSPNEx 関数 (ntifs.h)
SecMakeSPNEx は、特定のセキュリティ サービス プロバイダーと通信するときに使用できるサービス プロバイダー名の文字列を作成します。
構文
KSECDDDECLSPEC NTSTATUS SecMakeSPNEx(
[in] IN PUNICODE_STRING ServiceClass,
[in] IN PUNICODE_STRING ServiceName,
[in] IN PUNICODE_STRING InstanceName,
[in, optional] IN USHORT InstancePort,
[in, optional] IN PUNICODE_STRING Referrer,
[in, optional] IN PUNICODE_STRING TargetInfo,
[in, out] IN OUT PUNICODE_STRING Spn,
[out, optional] OUT PULONG Length,
[in] IN BOOLEAN Allocate
);
パラメーター
[in] ServiceClass
セキュリティ サービス プロバイダーのサービス クラスを指定する Unicode 文字列へのポインター。
[in] ServiceName
セキュリティ サービス プロバイダーのサービス名を指定する Unicode 文字列へのポインター。
[in] InstanceName
セキュリティ サービス プロバイダーに接続するためのインスタンス名を指定する、オプションの Unicode 文字列へのポインター。
[in, optional] InstancePort
サービスのインスタンスのポート番号。 既定のポートには 0 を使用します。 このパラメーターが 0 の場合、SPN にはポート番号は含まれません。
[in, optional] Referrer
IP アドレスの紹介を行ったホストの DNS 名を指定する、null で終わる定数文字列へのポインター。 ServiceName パラメーターで IP アドレスが指定されていない限り、このパラメーターは無視されます。
[in, optional] TargetInfo
コンテキストのターゲットを示す null で終わる文字列へのポインター。
[in, out] Spn
この関数によって作成されたセキュリティ サービス プロバイダー名文字列を格納するための Unicode 文字列へのポインター。
[out, optional] Length
作成された SPN の実際の長さを受け取る ULONG へのポインター (終端の null 文字を含む)。
[in] Allocate
Spn Unicode 文字列を格納するためのメモリをこの関数で割り当てる必要があるかどうかを示すブール型 (Boolean) の変数。 このパラメーターが true の場合、 Spn のメモリはページ プールから割り当てられます。
戻り値
SecMakeSPNEx は 、成功した場合はSTATUS_SUCCESS、失敗した場合は次のいずれかのエラー コードを返します。
リターン コード | 説明 |
---|---|
STATUS_BUFFER_OVERFLOW | Allocate パラメーターが false に設定され、次のいずれかの条件が発生しました: (1) Spn パラメーターが NULL ポインターでした。 (2) Spn Unicode 文字列パラメーターの最大長が小さすぎます。 |
STATUS_INVALID_PARAMETER | Spn パラメーターの合計長が 65535 バイトを超えています。 |
STATUS_NO_MEMORY | Allocate パラメーターが true に設定されましたが、メモリ割り当て要求は失敗しました。 |
注釈
SecMakeSPNEx は、 SecMakeSPN の拡張バージョンです。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | この関数は Windows XP のみです |
対象プラットフォーム | ユニバーサル |
Header | ntifs.h (Ntifs.h、FltKernel.h を含む) |
Library | Ksecdd.lib |
IRQL | <= APC_LEVEL |