Использование Twilio с программным обеспечением Rohos 2FA для входа на сервер терминалов
Кто-нибудь настраивал программное обеспечение Rohos 2FA, используя Twilio для части SMS? Я обновил PowerShell для правильного хука API, и когда я проверяю, ошибка не разрешена, но если я перейду непосредственно к хуку, я могу использовать ту же информацию в скрипте и получить доступ к информации XML. Я не уверен, что мне не хватает. Я новичок в использовании Twilio и Rohos. Просто пытаюсь обернуть голову вокруг всего этого. PS Скрипт ниже.
Любая помощь будет принята с благодарностью. Мне нужно закончить настройку части SMS. Система работает, но я могу использовать только часть Emergency Access, которая отвечает на вопросы безопасности. Нужно получить смс и запустить. Очевидно, я заблокировал номера счетов и пароли в скрипте. Спасибо за любую помощь!!!
if ($NotifyBySms)
{
# If phone is blank
if ($AdUserName.mobile -eq $null)
{
SaveStatus -StatusText "Error $($AdUserName.sAMAccountName) - phone is empty."
$cntNotificationsNotSent++
}
# If phone is not blank - send SMS
else
{
$SmsNotificationText = "OTP code is $($otp)"
#https://api.twilio.com/2010-04-01/Accounts/xxxxxxxxxxxxxxxxxx:xxxxxxxxxxxxxxxxxxx + to=$($AdUserName.mobile)+text=$($SmsNotificationText)
#https://smsc.ru/sys/send.php?login=xxxxxxx&psw=xxxxx&phones=+$($AdUserName.mobile)&mes=$($SmsNotificationText)
$SmsGatewayUrl = "https://api.twilio.com/2010-04-01/Accounts/xxxxxxxxxxxxxxxxxxxxxxxxxx/Messages.Json&user=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx&password=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx&to=$($AdUserName.mobile)&text=$($SmsNotificationText)"
$RequestResult = Invoke-WebRequest -Uri $SmsGatewayUrl
if ($RequestResult.Content -match "^OK")
{
SaveStatus -StatusText "SMS OK to $($AdUserName.mobile) RET: $($RequestResult.Content)."
#do nothing
}
else
{
SaveStatus -StatusText "SMS Error: $($RequestResult.Content)."
return -1
}
}
}
return $cntNotificationsNotSent
}
1 ответ
Twilio разработчик евангелист здесь.
Я никогда раньше не использовал PowerShell, поэтому я не знаю, что именно делать.
Тем не менее, я вижу, что в том, как вы делаете запрос на отправку SMS, есть несколько ошибок. Вот что вам нужно обновить:
- Вам необходимо отправить запрос на ресурс сообщений в виде
POST
запрос, так что добавьте-Method 'POST'
по вашему запросу - Вы не можете установить имя пользователя и пароль (SID учетной записи и токен аутентификации) в качестве параметров URL. Вместо этого вам нужно отправить их как базовую аутентификацию HTTP. Я считаю, что это означает, что вам нужно добавить
-Authentication Basic
а затем создатьPSCredential
объект с учетной записью sid и токеном авторизации, который вы затем передаете как-Credential
вариант Вам необходимо отправить параметры сообщения как часть тела запроса, а не в URL, также у вас нет нужных параметров, вам нужен
To
,From
иBody
сообщения, как это:$Body = @{ To = $AdUserName.mobile From = $YourTwilioNumber Body = $SmsNotificationText }
Затем добавьте
-Body $Body
на ваш запрос.
Я надеюсь, что это поможет вам создать URL и запросить отправку SMS-сообщения.