Проблема не связана с CouchDB, скорее разрешены методы аутентификации с Invoke-WebRequest.
Хотя я не могу найти никакой документации, в которой явно указаны учетные данные URL , не поддерживаются, я нахожу в документации PowerShell 1 список методов аутентификации, которые поддерживается:
-Аутентификация
Указывает явный тип аутентификации, который будет использоваться для запроса. По умолчанию None. Аутентификация не может использоваться с UseDefaultCredentials.
Доступные параметры аутентификации:
Нет : эта опция по умолчанию, когда аутентификация не указана; явная аутентификация не используется.
Basi c: Требуются учетные данные. Учетные данные отправляются в заголовке аутентификации RF C 7617 Basi c в формате base64 (пользователь: пароль).
Носитель : требуется токен. Посылает авторизацию RFC 6750: заголовок канала-носителя с предоставленным токеном. Это псевдоним OAuth
OAuth : требуется токен. Отправляет авторизацию RF C 6750: заголовок канала-носителя с предоставленным токеном. Это псевдоним Bearer
Я понимаю, что вышеприведенное означает, что используемый вами способ аутентификации не поддерживается.
Вот один пример, использующий аутентификацию Basi c, один из бесчисленных сотен способов выполнить вашу задачу.
# setup variables to form a HTTP Basic Authorization
$uid = "<username>"
$pwd = "<password>"
# Convert the Basic credentials to bytes
$atob = [System.Text.Encoding]::UTF8.GetBytes($uid +":" + $pwd)
# To Base64 encoding
$auth = "Basic " + [System.Convert]::ToBase64String($atob)
# Create the database
Invoke-WebRequest -Method PUT -Url http://127.0.0.1:5964/abc -Headers @{"Authorization"=$auth}
FWIW, cURL обеспечивает простоту встроенной http-аутентификации URL, но это не может быть вариантом.
Приведенный выше код заимствован из этого SO Q / A ответа относительно аутентификации Basi c.
1 PowerShell Documentation Version 7