PowerShell:
Inviare una richiesta http con autenticazione di base
How to:
# Definisci le credenziali
$User = 'utente'
$Password = 'password'
$Pair = "$($User):$($Password)"
# Codifica le credenziali in Base64
$EncodedCredentials = [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes($Pair))
# Prepara l'header per l'autenticazione di base
$Headers = @{
Authorization = "Basic $EncodedCredentials"
}
# Invia la richiesta GET con le credenziali
$Response = Invoke-RestMethod -Uri 'http://example.com/api' -Method Get -Headers $Headers
# Visualizza il risultato
$Response
Output: (dipende dalla risposta dell’API/service, mostrerà i dati recuperati o un messaggio di stato)
Deep Dive:
L’autenticazione HTTP di base è in giro da anni, semplice ma meno sicura rispetto ad alternative più moderne come l’Oauth2.0. Devi solo codificare username e password in Base64 e includerlo nell’header come mostrato sopra. Alternativamente, potresti usare un modulo HTTP di PowerShell come Invoke-WebRequest
o anche un client HTTP avanzato come curl. Ricorda, usa l’autenticazione di base solo su connessioni sicure (HTTPS) e considera alternative più robuste se la sicurezza è una priorità.