Smartcard auslesen mit CredUIPromptForWindowsCredentials

    Smartcard auslesen mit CredUIPromptForWindowsCredentials

    Frohes Neues zusammen!
    Hat sich schon mal jemand mit CredUIPromptForWindowsCredentials beschäftigt?

    Ich bekomme das zwar problemlos zur Anzeige, stoße dann aber aber auf 2 Probleme:
    • Wie lässt sich die Abfrage der Credentials auf die Smartcard einschränken (siehe angehängte Screenshots) ?
    • Wie prüfe ich, ob die eingegebene PIN auch die richtige ist?
    Für hilfreiche Tipps danke ich im Voraus!

    P.S.
    Ich mache das z.Zt. so:

    Delphi-Code

    1. ​var
    2. UIInfo: CREDUI_INFO;
    3. Save: BOOL;
    4. AuthPackage: ULONG;
    5. AuthBuffer: LPVOID;
    6. AuthBufferSize: ULONG;
    7. begin
    8. UIInfo.hwndParent := Parent;
    9. UIInfo.pszMessageText := 'PKI-Anmeldung erforderlich:';
    10. UIInfo.pszCaptionText := 'ProdLog';
    11. UIInfo.hbmBanner := 0;
    12. UIInfo.cbSize := SizeOf(CREDUI_INFO);
    13. AuthPackage := 0;
    14. Save := False;
    15. Result := CredUIPromptForWindowsCredentials(@UIInfo, 0, AuthPackage, nil, 0, AuthBuffer, AuthBufferSize, Save, 0);
    Bilder
    • SmartcardIst.png

      32,42 kB, 439×325, 5 mal angesehen
    • SmartcardSoll.png

      25,97 kB, 439×248, 4 mal angesehen
    "After three days without programming, life becomes meaningless." (The Tao of Programming, Book 2)
    "Any fool can write code that a computer can understand. Good programmers write code that humans can understand" (Martin Fowler, 'Refactoring')