次の方法で共有


SecMakeSPNEx2 関数 (ntifs.h)

SecMakeSPNEx2 は、特定のセキュリティ サービス プロバイダーと通信するときに使用できるサービス プロバイダー名の文字列を作成します。

構文

KSECDDDECLSPEC NTSTATUS SecMakeSPNEx2(
  [in]            IN PUNICODE_STRING     ServiceClass,
  [in]            IN PUNICODE_STRING     ServiceName,
  [in, optional]  IN PUNICODE_STRING     InstanceName,
  [in, optional]  IN USHORT              InstancePort,
  [in, optional]  IN PUNICODE_STRING     Referrer,
  [in, optional]  IN PUNICODE_STRING     InTargetInfo,
  [in, out]       IN OUT PUNICODE_STRING Spn,
  [out, optional] OUT PULONG             TotalSize,
  [in]            IN BOOLEAN             Allocate,
  [in]            IN BOOLEAN             IsTargetInfoMarshaled
);

パラメーター

[in] ServiceClass

セキュリティ サービス プロバイダーのサービス クラスを指定する Unicode 文字列へのポインター。

[in] ServiceName

セキュリティ サービス プロバイダーのサービス名を指定する Unicode 文字列へのポインター。

[in, optional] InstanceName

セキュリティ サービス プロバイダーとの接続に使用されるインスタンス名を指定する、オプションの Unicode 文字列へのポインター。

[in, optional] InstancePort

サービスのインスタンスのポート番号。 既定のポートには 0 を使用します。 このパラメーターが 0 の場合、SPN にはポート番号は含まれません。

[in, optional] Referrer

IP アドレスの紹介を行ったホストの DNS 名を指定する、null で終わる定数文字列へのポインター。 ServiceName パラメーターで IP アドレスが指定されていない限り、このパラメーターは無視されます。

[in, optional] InTargetInfo

コンテキストのターゲットを示す null で終わる文字列へのポインター。

[in, out] Spn

この関数によって作成されたセキュリティ サービス プロバイダー名の文字列を受け取る Unicode 文字列へのポインター。

[out, optional] TotalSize

作成された SPN の実際の長さを受け取る ULONG へのポインター (終端の null 文字を含む)。

[in] Allocate

Spn Unicode 文字列の格納に使用されるメモリをこの関数で割り当てる必要があるかどうかを示すブール型 (Boolean) の変数。 このパラメーターが TRUE の場合、 Spn のメモリはページ プールから割り当てられます。

[in] IsTargetInfoMarshaled

呼び出し元がマーシャリングされた InTargetInfo 構造体を提供したことを示すブール型 (Boolean) の変数。 IsTargetInfoMarshaled が TRUE の場合、InTargetInfo-Buffer> は CredMarshalTargetInfo 関数によって返されるCREDENTIAL_TARGET_INFORMATION構造体の文字列表現を指します。

戻り値

SecMakeSPNEx2 は、成功した場合はSTATUS_SUCCESS、失敗した場合は次のいずれかのエラー コードを返します。

リターン コード 説明
STATUS_BUFFER_OVERFLOW Allocate パラメーターが false に設定され、次のいずれかの条件が発生しました: (1) Spn パラメーターが NULL ポインターでした。 (2) Spn Unicode 文字列パラメーターの最大長が小さすぎます。
STATUS_INVALID_PARAMETER Spn パラメーターの合計長が 65535 バイトを超えています。
STATUS_NO_MEMORY Allocate パラメーターが true に設定されましたが、メモリ割り当て要求は失敗しました。

注釈

SecMakeSPNEx2 は、 SecMakeSPNEx の拡張バージョンです。

要件

要件
サポートされている最小のクライアント Windows Vista
サポートされている最小のサーバー Windows Server 2008
対象プラットフォーム ユニバーサル
Header ntifs.h (Ntifs.h、FltKernel.h を含む)
Library Ksecdd.lib
IRQL <= APC_LEVEL

こちらもご覧ください

SecMakeSPN

SecMakeSPNEx