Maison > Article > développement back-end > Comment effectuer l'authentification NTLM avec les informations d'identification du système Windows dans les requêtes HTTP Go ?
Authentification NTLM dans les requêtes HTTP Go avec les informations d'identification du système Windows
Dans le monde du développement Web, l'authentification est cruciale pour sécuriser l'accès aux ressources protégées . Un mécanisme d'authentification courant est NTLM, qui implique l'utilisation des informations d'identification Windows de l'utilisateur pour vérifier son identité. Cet article explique comment implémenter l'authentification NTLM dans les requêtes HTTP Go, en utilisant les informations d'identification système de l'utilisateur Windows.
Traditionnellement, l'authentification NTLM nécessite la spécification manuelle d'un nom d'utilisateur et d'un mot de passe, mais notre objectif est d'éviter ce processus fastidieux. En tirant parti des capacités de l'objet COM WinHTTPRequest, nous pouvons exploiter les informations d'identification par défaut du système pour une expérience d'authentification transparente.
Pour y parvenir dans Go, nous utilisons la bibliothèque go-ole, qui fournit une interface pour interagir avec des objets COM. Voici un extrait de code qui illustre l'approche :
<code class="go">package main import ( "fmt" ole "github.com/go-ole/go-ole" "github.com/go-ole/go-ole/oleutil" ) func main() { ole.CoInitialize(0) defer ole.CoUninitialize() unknown, _ := oleutil.CreateObject("WinHTTP.WinHTTPRequest.5.1") request, _ := unknown.QueryInterface(ole.IID_IDispatch) oleutil.CallMethod(request, "SetAutoLogonPolicy", 0) oleutil.CallMethod(request, "Open", "GET", "http://example.com", false) oleutil.CallMethod(request, "Send") resp := oleutil.MustGetProperty(request, "ResponseText") fmt.Println(resp.ToString()) }</code>
Dans ce code, nous créons une instance WinHTTPRequest, définissons la politique de connexion automatique pour autoriser l'authentification automatique, ouvrons une requête HTTP GET à une URL spécifiée et envoyons la demande. Enfin, nous récupérons le texte de la réponse. Le système récupérera de manière transparente les informations d'identification de l'utilisateur et effectuera l'authentification NTLM, permettant l'accès à la ressource protégée.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!