Από το PowerShell 3.0 και μετά, το PSDefaultParameterValues μπορεί να παρέχει προεπιλογές διαμεσολαβητή για επαναλαμβανόμενες κλήσεις web:

$PSDefaultParameterValues['Invoke-WebRequest:Proxy'] = 'http://proxy.example:8080'
$PSDefaultParameterValues['Invoke-RestMethod:Proxy'] = 'http://proxy.example:8080'

Αυτές οι αναθέσεις διατηρούν τις άσχετες προεπιλογές στο λεξικό. Μια ρητή παράμετρος Proxy υπερισχύει της αντίστοιχης προεπιλογής. Κρατήστε τα κλειδιά ειδικά για την εντολή αντί να αντιστοιχίζετε κάθε παρόμοια ονομασμένη παράμετρο με wildcard. Για μια ξεχωριστή συνεδρία δημόσιου ιστότοπου όπου επιτρέπονται δημόσιοι διαμεσολαβητές, επιλέξτε υποψήφιο από τη λίστα διαμεσολαβητών HTTP μόνο όταν δεν έχουν οριστεί προεπιλογές ProxyCredential ή ProxyUseDefaultCredentials ούτε ρητά διαπιστευτήρια διαμεσολαβητή.

Αν ο διαμεσολαβητής χρησιμοποιεί την τρέχουσα ταυτότητα Windows, προσθέστε τις αντίστοιχες προεπιλογές:

$PSDefaultParameterValues['Invoke-WebRequest:ProxyUseDefaultCredentials'] = $true
$PSDefaultParameterValues['Invoke-RestMethod:ProxyUseDefaultCredentials'] = $true

Τοποθετήστε τις επιλεγμένες καταχωρίσεις στο κατάλληλο profile όταν οι μελλοντικές διαδραστικές συνεδρίες πρέπει να τις λαμβάνουν. Για διαφορετικό δίκτυο, αντικαταστήστε τις τιμές τους ή αφαιρέστε τις καταχωρίσεις που ανήκουν σε αυτή τη ρύθμιση:

$PSDefaultParameterValues.Remove('Invoke-WebRequest:Proxy')
$PSDefaultParameterValues.Remove('Invoke-RestMethod:Proxy')
$PSDefaultParameterValues.Remove('Invoke-WebRequest:ProxyUseDefaultCredentials')
$PSDefaultParameterValues.Remove('Invoke-RestMethod:ProxyUseDefaultCredentials')

Η αφαίρεση αποκαθιστά τη συνήθη επιλογή παραμέτρων. Το cmdlet μπορεί ακόμη να χρησιμοποιεί την υποστηριζόμενη διαμόρφωση συστήματος ή περιβάλλοντος· η αφαίρεση μιας προεπιλογής δεν ζητά ρητά απευθείας σύνδεση.

Σχετικά άρθρα