0

Powershell을 사용하여 Powershell을 사용하여 Azure SQL 데이터베이스 (Paas 인스턴스)에 암호 (& 암호없이 Active Directory 연결)를 연결하려면 어떻게해야합니까? 내가 $ 서버 이름 아래로 invoke-sqlcmd을 사용할 때 사용자 이름과 암호를 사용하여 연결할 수 = "xxxxx.database.windows.net" $ PARAMS = @ {Powershell을 사용하여 통합 보안이 적용된 Azure Paas 데이터베이스 연결 방법

Database = $databasename 

    ServerInstance = $ServerName 

    Username = $UserName 

    Password = $password 

    'OutputSqlErrors' = $true 

    Query = $QueryString 

    } 

    Invoke-Sqlcmd @params 

나는 Active Directory와 그것을 할 수있는 능력이 필요합니다 . ODBC 연결 또는 다른 데이터 소스를 사용하여 연결 문자열 (C#의 컨텍스트)에 지정하는 한 활성 디렉토리에 연결하는 방법에 대한 몇 가지 기사를 읽었습니다. Powershell은 .Net을 기반으로하므로 이 ..

$ConnString = "DRIVER=ODBC Driver 13 for SQL Server;SERVER=xxxxx.database.windows.net;DATABASE=DBName;Trusted_Connection=Yes" 
    $Conn = new-object System.Data.Odbc.OdbcConnection($ConnString) 
    $conn.open() 
    $cmd = new-object System.Data.Odbc.OdbcCommand("select getdate() as X", $Conn) 
    $data = new-object System.Data.Odbc.OdbcDataAdapter($cmd) 
    $dt = new-object System.Data.DataColumn 
    $data.Fill($dt) 
    $Conn.Close() 

#`server=Server;database=Database;Authentication=ActiveDirectoryIntegrated;` 
Active Directory를 사용하려고 시도의 목적은 PaaS를 내 만 AD 계정이 다른 AD 계정을 추가 할 수 있다는 것입니다

할-할 수 있어야합니다. Azure 포털에 로그인하고 AD 계정을 수동으로 추가하는 대신 방법으로 다른 계정을 추가 할 수 있기를 원합니다.

답변

0

Azure AD 계정을 사용하여 Azure Active Directory 인증을 사용하여 Azure SQL 데이터베이스 (Paas)에 로그인 할 수 있습니다. 자세한 내용은 link을 참조하십시오.

참고 : 로컬 domian AD 사용자는이 기능을 지원하지 않습니다.

다음 스크립트를 사용하여 Azure AD 인증으로 로그인 할 수 있습니다.

#You admin Azure AD user name 
$Username = "[email protected]*****.onmicrosoft.com" 
$Password = "********" 
$Database = "testg" 
$Server = 'test.database.windows.net' 
$Port = 1433 
$cxnString = "Server=tcp:$Server,$Port;Database=$Database;Authentication=Active Directory Password;UID=$UserName;PWD=$Password;Trusted_Connection=False;Encrypt=True;Connection Timeout=30;" 
$query = "select count(*) from dbo.Authors" 
$cxn = New-Object System.Data.SqlClient.SqlConnection($cxnString) 
$cxn.Open() 
$cmd = New-Object System.Data.SqlClient.SqlCommand($query, $cxn) 
$cmd.CommandTimeout = 120 
$cmd.ExecuteNonQuery() 
$cxn.Close() 
1

다음 예제는 팝업 대화없이 추가 AzureAccount를 호출하는 방법을 보여줍니다

$username = "[email protected]" 
$password = "Pa$$w0rd" | ConvertTo-SecureString -AsPlainText -Force 

$credential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $username, $password 
Add-AzureAccount -Credential $credential