Delphi が Active Directory Kerberos サーバーを呼び出してチケット許可チケット/通常チケットを要求する方法を示す例はありますか?
背景: チケットは、機密情報を交換する Web サービスへの認証に必要です。
編集: 短いソース コードの例は非常に役立ちます。非常に印象的なJEDI Windows Security Code Libraryを見つけました。Kerberos のサポートが含まれているかどうかはわかりません。
Delphi が Active Directory Kerberos サーバーを呼び出してチケット許可チケット/通常チケットを要求する方法を示す例はありますか?
背景: チケットは、機密情報を交換する Web サービスへの認証に必要です。
編集: 短いソース コードの例は非常に役立ちます。非常に印象的なJEDI Windows Security Code Libraryを見つけました。Kerberos のサポートが含まれているかどうかはわかりません。
これによれば、 InitializeSecurityContext Windows API 呼び出しで取得できるはずです。
最初に、 Security Support Provider Interface を使用したアプリケーションの Kerberos 化を読んで、一般的な考え方を理解してください。InitializeSecurityContext
は次のように記述されています。
サーバーに渡す必要があるセキュリティ トークンを生成することにより、セキュリティ コンテキストを開始します。この機能を利用するアプリケーションを SSPI クライアントと呼びます。
msdn では、SSPI 関数のリストはAuthentication Functionsにあります。
実際のサンプル コードについては、Win32 サンプルのSSPI ページを参照してください。おそらく client.cppが便利だと思います。別の同様の例はGssClient.cです。SEC_I_CONTINUE_NEEDED
が返されると会話が継続するため、両方のコードがループで実行されます。