Могу ли я экспортировать всех azure активных пользователей каталога в базу данных MySQL через Runbook в azure автоматизации? - PullRequest
0 голосов
/ 07 января 2020

Могу ли я экспортировать всех azure активных пользователей каталога в базу данных MySQL через Runbook в azure автоматизации? Кто-то, у кого есть какой-то код с, например, именем и фамилией только пользователя?

1 Ответ

0 голосов
/ 08 января 2020

Да, вы можете. Ваш код будет выглядеть примерно так:

######## Connect to Azure AD ##################
# Get Azure Run As Connection Name
$connectionName = "AzureRunAsConnection"
# Get the Service Principal connection details for the Connection name
$servicePrincipalConnection = Get-AutomationConnection -Name $connectionName         

# Logging in to Azure AD with Service Principal
"Logging in to Azure AD..."
Connect-AzureAD -TenantId $servicePrincipalConnection.TenantId `
    -ApplicationId $servicePrincipalConnection.ApplicationId `
    -CertificateThumbprint $servicePrincipalConnection.CertificateThumbprint

######## Create CSV of all users ##################

$users = Get-AzureADUser -All $true
$userList = @()

foreach ($user in $users){
    $userex = $user | Select-Object -ExpandProperty ExtensionProperty
    $userProperties = [ordered] @{
        accountEnabled=$user.GivenName
        userPrincipalName=$user.Surname

    }
    $u = new-object PSObject -Property $userProperties
    $userList += $u
}
$userList | Export-Csv  .\users.csv -NoTypeInformation

$csvFullPath = Resolve-Path .\users.csv

######## Import CSV data into MySql ##################

[system.reflection.assembly]::LoadWithPartialName("MySql.Data")
$mysqlConn = New-Object -TypeName MySql.Data.MySqlClient.MySqlConnection
$mysqlConn.ConnectionString = "SERVER=localhost;DATABASE=loadfiletest;UID=root;PWD=pwd"
$mysqlConn.Open()
$MysqlQuery = New-Object -TypeName MySql.Data.MySqlClient.MySqlCommand
$MysqlQuery.Connection = $mysqlConn
$MysqlQuery.CommandText = "LOAD DATA LOCAL INFILE '$csvFullPath' INTO TABLE loadfiletest.testtable FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '""' LINES TERMINATED BY '\r\n' (GivenName, Surname)"
$MysqlQuery.ExecuteNonQuery()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...