Sup!
Du sendest dem Server einen Request (Das kann z.B. LWP::UserAgent - es geht aber auch nur mit FileHandle und IO::Socket, socket und connect), und in dem schickst Du im HTTP-Header Name und Passwort. Eventuell muss das Base64 encoded sein. Wenn Name/Passwort stimmen, dann liefert der Server die Seite an Dein Skript aus, denn für den Server ist es das gleiche, wie wenn jemand diese Box im Browser richtig ausgefüllt hat, dann wird genau so ein Request mit ausgefüllten HTTP-Headern geschickt, wie ihn Dein Skript schickt. Dann kann Dein Skript den Inhalt der geschützten Seite wiederum an den Skript-Benutzer ausliefern.
Gruesse,
Bio