Posted On June 14, 2020

PowerShell: Validate SQL Server Credentials

kimconnect 0 comments
blog.KimConnect.com >> Codes >> PowerShell: Validate SQL Server Credentials

Add this to your SQL toolbox so that it’ll be quick and easy to validate a given MS SQL database credential before applying it to your scripts.

$id='sa'
$password='somePasswordHere'
$sqlServer='sqlServerName'
$databaseName='bookFace'
$cred=New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $id,$(ConvertTo-securestring $password -AsPlainText -Force)

function testSqlCredential {
    param(
        [Parameter(Mandatory)][string]$sqlServer,
        [Parameter(Mandatory)][pscredential]$credential,
        [string]$databaseName='master'
    )

    $ErrorActionPreference = 'Stop'

    try {
        $id = $credential.UserName
        $password = $credential.GetNetworkCredential().Password
        $connectionString = 'Data Source={0};database={1};User ID={2};Password={3}' -f $sqlServer,$databaseName,$id,$password
        $sqlConnection = New-Object System.Data.SqlClient.SqlConnection $ConnectionString
        $sqlConnection.Open()
        $sqlConnection.Close()
        write-host "Credential is valid for $servername for database $databaseName"
        return $true
        }
    catch {
        write-warning "$error"
        return $false
        }
}

testSqlCredential $sqlServer $cred $databaseName

Leave a Reply

Your email address will not be published. Required fields are marked *

Related Post

Setting Up Python on a Windows Machine

# Install Visual C++ 14choco install vcredist2017 -y# Install Python 3.8choco install python --version=3.8 -y#…

FTP On Upload Email

# Connection details# If your SMTP server does not support SSL, remove the -UseSSL parameter…

PowerShell: Elevating Credential

$jumpbox="127.0.0.1" <# # Static Credentials (unsecured) $username = (Get-ADDomain).name+"\ADMINISTRATOR" $password = "PASSWORD" #> # Dynamic…
Other project: DragonCoin.com