ホーム › Security.Authentication.WebAuthn › EXPERIMENTAL_IPluginAuthenticator
EXPERIMENTAL_IPluginAuthenticator
COMメソッド 3
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
vtbl 3 HRESULT EXPERIMENTAL_PluginMakeCredential(EXPERIMENTAL_WEBAUTHN_PLUGIN_OPERATION_REQUEST* request, EXPERIMENTAL_WEBAUTHN_PLUGIN_OPERATION_RESPONSE** response)
| request | EXPERIMENTAL_WEBAUTHN_PLUGIN_OPERATION_REQUEST* | in | クレデンシャル作成 (MakeCredential) 操作の要求内容を格納した EXPERIMENTAL_WEBAUTHN_PLUGIN_OPERATION_REQUEST 構造体へのポインタを指定する。 |
| response | EXPERIMENTAL_WEBAUTHN_PLUGIN_OPERATION_RESPONSE** | out | 操作の結果を格納した EXPERIMENTAL_WEBAUTHN_PLUGIN_OPERATION_RESPONSE 構造体を受け取るポインタである。 |
vtbl 4 HRESULT EXPERIMENTAL_PluginGetAssertion(EXPERIMENTAL_WEBAUTHN_PLUGIN_OPERATION_REQUEST* request, EXPERIMENTAL_WEBAUTHN_PLUGIN_OPERATION_RESPONSE** response)
| request | EXPERIMENTAL_WEBAUTHN_PLUGIN_OPERATION_REQUEST* | in | アサーション取得 (GetAssertion) 操作の要求内容を格納した EXPERIMENTAL_WEBAUTHN_PLUGIN_OPERATION_REQUEST 構造体へのポインタを指定する。 |
| response | EXPERIMENTAL_WEBAUTHN_PLUGIN_OPERATION_RESPONSE** | out | 操作の結果を格納した EXPERIMENTAL_WEBAUTHN_PLUGIN_OPERATION_RESPONSE 構造体を受け取るポインタである。 |
vtbl 5 HRESULT EXPERIMENTAL_PluginCancelOperation(EXPERIMENTAL_WEBAUTHN_PLUGIN_CANCEL_OPERATION_REQUEST* request)
| request | EXPERIMENTAL_WEBAUTHN_PLUGIN_CANCEL_OPERATION_REQUEST* | in | キャンセルする操作を特定する EXPERIMENTAL_WEBAUTHN_PLUGIN_CANCEL_OPERATION_REQUEST 構造体へのポインタを指定する。 |
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
出力引数:
#define global IID_EXPERIMENTAL_IPluginAuthenticator "{E6466E9A-B2F3-47C5-B88D-89BC14A8D998}" #usecom global EXPERIMENTAL_IPluginAuthenticator IID_EXPERIMENTAL_IPluginAuthenticator "{}" #comfunc global EXPERIMENTAL_IPluginAuthenticator_EXPERIMENTAL_PluginMakeCredential 3 var,var #comfunc global EXPERIMENTAL_IPluginAuthenticator_EXPERIMENTAL_PluginGetAssertion 4 var,var #comfunc global EXPERIMENTAL_IPluginAuthenticator_EXPERIMENTAL_PluginCancelOperation 5 var ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。#define global IID_EXPERIMENTAL_IPluginAuthenticator "{E6466E9A-B2F3-47C5-B88D-89BC14A8D998}" #usecom global EXPERIMENTAL_IPluginAuthenticator IID_EXPERIMENTAL_IPluginAuthenticator "{}" #comfunc global EXPERIMENTAL_IPluginAuthenticator_EXPERIMENTAL_PluginMakeCredential 3 sptr,sptr #comfunc global EXPERIMENTAL_IPluginAuthenticator_EXPERIMENTAL_PluginGetAssertion 4 sptr,sptr #comfunc global EXPERIMENTAL_IPluginAuthenticator_EXPERIMENTAL_PluginCancelOperation 5 sptr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。