次の方法で共有


SecPkgInfoA 構造体 (sspi.h)

SecPkgInfo 構造体は、名前や機能など、セキュリティ パッケージのに関する一般的な情報を提供します。

構文

typedef struct _SecPkgInfoA {
  unsigned long  fCapabilities;
  unsigned short wVersion;
  unsigned short wRPCID;
  unsigned long  cbMaxToken;
  SEC_CHAR       *Name;
  SEC_CHAR       *Comment;
} SecPkgInfoA, *PSecPkgInfoA;

メンバーズ

fCapabilities

セキュリティ パッケージの機能を記述するビット フラグのセット。 このメンバーは、次のフラグの組み合わせにすることができます。

価値 意味
SECPKG_FLAG_INTEGRITY
0x1
セキュリティ パッケージは、MakeSignature と VerifySignature 関数 サポートしています。
SECPKG_FLAG_PRIVACY
0x2
セキュリティ パッケージは、EncryptMessage (General) および DecryptMessage (General) 関数をサポートしています。
SECPKG_FLAG_TOKEN_ONLY
0x4
パッケージはメッセージのセキュリティ トークン部分にのみ関心があり、他のバッファーは無視されます。 これはパフォーマンス関連の問題です。
SECPKG_FLAG_DATAGRAM
0x8
データグラムスタイル認証をサポートします。 詳細については、「SSPI コンテキスト セマンティクスの」を参照してください。
重要Microsoft Kerberos パッケージは、ユーザー間モードでのデータグラム コンテキストをサポートしていません。
 
SECPKG_FLAG_CONNECTION
0x10
接続指向のスタイル認証をサポートします。 詳細については、「SSPI コンテキスト セマンティクスの」を参照してください。
SECPKG_FLAG_MULTI_REQUIRED
0x20
認証には複数の脚が必要です。
SECPKG_FLAG_CLIENT_ONLY
0x40
サーバー認証のサポートは提供されていません。
SECPKG_FLAG_EXTENDED_ERROR
0x80
拡張エラー処理をサポートします。 詳細については、「拡張エラー情報 を参照してください。
SECPKG_FLAG_IMPERSONATION
0x100
サーバー コンテキストでの Windows の偽装をサポートします。
SECPKG_FLAG_ACCEPT_WIN32_NAME
0x200
Windows プリンシパル名とターゲット名について理解します。
SECPKG_FLAG_STREAM
0x400
ストリーム セマンティクスをサポートします。 詳細については、「SSPI コンテキスト セマンティクスの」を参照してください。
SECPKG_FLAG_NEGOTIABLE
0X800
microsoft Negotiate セキュリティ パッケージ で使用できます。
SECPKG_FLAG_GSS_COMPATIBLE
0x1000
GSS の互換性をサポートします。
SECPKG_FLAG_LOGON
0x2000
LsaLogonUserをサポートします。
SECPKG_FLAG_ASCII_BUFFERS
0x4000
トークン バッファーは ASCII 文字形式です。
SECPKG_FLAG_FRAGMENT
0x8000
アプリケーションが InitializeSecurityContext (General) を繰り返し呼び出し、認証を完了するために小さなバッファーで AcceptSecurityContext (General) を できるように、大きなトークンをより小さなバッファーに分離することをサポートします。
SECPKG_FLAG_MUTUAL_AUTH
0x10000
相互認証をサポートします。
SECPKG_FLAG_DELEGATION
0x20000
委任をサポートします。
SECPKG_FLAG_READONLY_WITH_CHECKSUM
0x40000
セキュリティ パッケージでは、EncryptMessage 関数を呼び出すときに、インプレース暗号化の代わりにチェックサムを使用できます。
SECPKG_FLAG_RESTRICTED_TOKENS
0x80000
制限付きトークンを持つ呼び出し元をサポートします。
SECPKG_FLAG_NEGO_EXTENDER
0x00100000
セキュリティ パッケージは、Microsoft Negotiate セキュリティ パッケージを拡張します。 この種類のパッケージは、最大で 1 つ存在できます。
SECPKG_FLAG_NEGOTIABLE2
0x00200000
このパッケージは、SECPKG_FLAG_NEGO_EXTENDER型のパッケージによってネゴシエートされます。
SECPKG_FLAG_APPCONTAINER_PASSTHROUGH
0x00400000
このパッケージは、アプリ コンテナー アプリからすべての呼び出しを受け取ります。
SECPKG_FLAG_APPCONTAINER_CHECKS
0x00800000
このパッケージは、次のいずれかのチェックが成功した場合に、アプリ コンテナー アプリから呼び出しを受け取ります。
  • 呼び出し元には、既定の資格情報機能があります。
  • ターゲットはプロキシ サーバーです。
  • 呼び出し元が資格情報を指定しました。
SECPKG_CALLFLAGS_APPCONTAINER
0x00000001
呼び出し元はアプリ コンテナーです。
SECPKG_CALLFLAGS_AUTHCAPABLE
0x00000002
呼び出し元は既定の資格情報を使用できます。
SECPKG_CALLFLAGS_FORCE_SUPPLIED
0x00000004
呼び出し元は、指定された資格情報のみを使用できます。

wVersion

パッケージ プロトコルのバージョンを指定します。 1 にする必要があります。

wRPCID

必要に応じて、DCE RPC 識別子を指定します。 パッケージが DCE 登録済みセキュリティ システムの 1 つを実装していない場合は、予約値SECPKG_ID_NONEが使用されます。

cbMaxToken

トークンの最大サイズをバイト単位で指定します。

Name

セキュリティ パッケージの名前を含む null で終わる文字列へのポインター。

Comment

null で終わる文字列へのポインター。 パッケージによって返される任意の追加の文字列を指定できます。

備考

手記

sspi.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして SecPkgInfo を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows XP [デスクトップ アプリのみ]
サポートされる最小サーバー Windows Server 2003 [デスクトップ アプリのみ]
ヘッダー sspi.h (Security.h を含む)

関連項目

EnumerateSecurityPackages の

QuerySecurityPackageInfo