J'ai un Service Windows que je veux utiliser de programmation pour déverrouiller le poste de travail, à l'aide du compte nom d'utilisateur et mot de passe.
Cet article https://technet.microsoft.com/en-us/library/dn751047(v=ws.11).aspx explique l'authentification d'ouverture de session de flux de travail sous Windows dans l'image suivante:
Comme vu ci-dessus, à l'étape 5, l'utilisateur saisit les informations d'identification dans la Connexion de l'INTERFACE utilisateur. Ce que je veux réaliser est d'avoir le Service Windows entrée les informations d'identification et ont winlogon effectuer la connexion.
Il n'y a pas de winlogon API pour atteindre cet objectif. Comme on le voit dans d'autres questions, à l'aide de winapi de l' LogonUser
fonction effectue correctement l'authentification et renvoie un jeton, mais il ne parvient pas à passer le bureau de l'application et la Connexion de l'INTERFACE utilisateur sur l'écran.
La plupart des articles et des réponses indice vers les informations d'identification de fournisseurs, mais tous les fournisseurs d'informations d'identification des échantillons nécessitent une interaction de l'utilisateur avec le Connexion de l'INTERFACE utilisateur.
Mise à jour: je vois que certains utilisateurs n'ont pas vraiment compris la question et proposent des solutions qui ne sont pas utiles pour mon cas. Le flux de travail que je suis en train de réaliser est le suivant:
- Service Windows démarre sur Windows boot (fait).
- Même service Windows dispose d'un service web et accepte des requêtes HTTP via une API (fait).
- L'utilisateur fournit des informations d'identification pour le service par le biais de l'API à partir d'un autre appareil (un fait).
- Informations d'identification fournies sont utilisés pour se connecter au poste de travail.
4.1 fournit les informations d'identification sont utilisées pour déverrouiller le poste de travail en cas de lock (WinKey + L). - (Facultatif) Le service expose les comptes Windows via l'API.
- (Facultatif) L'utilisateur est en mesure de spécifier pour le service de ce compte qui veut l'utiliser pour la connexion.
Pour l'instant, je suis intéressé à faire les étapes 4 et 4.1.