Получение содержимого файла из BLOB-объекта Azure - PullRequest
0 голосов
/ 10 июня 2019

Я хочу отправить отчет с помощью sendgrid в Azure AA. Проблема в том, что я вынужден использовать apikey pass в незашифрованном виде в скрипте, и я, очевидно, хочу избежать этого любой ценой. Я подумал, что могу сохранить файл с помощью apikey в txt-файле, где-то спрятано хранилище Azure в конкретном контейнере. То, чего я хочу достичь, это что-то вроде этого:

(...)
$HTMLDetails = @{
Title = $Subject
Head = $CSS
}

$Username ="username"

$apikey = get-storageblobfilecontent -container x -blob y -file z | Out-String

$Password = ConvertTo-SecureString $apikey -Force

$Credential = New-Object System.Management.Automation.PSCredential $Username, $Password

$Splat = @{
    To          =...
    Cc          =...
    Body       ="$(import-csv -delimiter ";" DiskReport.csv | ConvertTo-Html @HTMLDetails)"
    Subject     = $Subject
    smtpServer  ="smtp.sendgrid.net"
    From        ="AzureReporting@azure.com" 
    BodyAsHtml  = $True
    }

Send-MailMessage @Splat -Credential $Credential -Usessl -Port xxx

Это действительно возможно сделать? Извлечение содержимого файла из виртуальной машины невозможно, поскольку сценарии Runbook не могут напрямую обращаться к виртуальной машине.

1 Ответ

1 голос
/ 10 июня 2019

Вы можете использовать встроенный командлет Get-AutomationPSCredential внутри вашей книги запусков.На уровне учетной записи автоматизации вы можете настроить учетные данные, которые будут надежно храниться, а затем перенести их в вашу книгу запусков (она настроена таким образом, что выходные данные никогда не могут быть записаны на хост в виде открытого текста).

Создание учетных данных (например,«MyApiKey») внутри вкладки «Учетные данные» на АА.Внутри вашего скрипта используйте следующую команду $apiKey = Get-AutomationPSCredential MyApiKey

Затем вы можете передать это в $Credential объект.

См. https://docs.microsoft.com/en-us/azure/automation/shared-resources/credentials#activities для получения дополнительной информации об утилите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...