Upload New File
This commit is contained in:
@@ -0,0 +1,163 @@
|
|||||||
|
#########################################################################################
|
||||||
|
#
|
||||||
|
# Ownership taker
|
||||||
|
#
|
||||||
|
#########################################################################################
|
||||||
|
# this script can be use to take the ownership of an account
|
||||||
|
# specify your name in the list of $list_of_known_users with your autologonname (put your login name if you don't know your Pbkdf2 Hash)
|
||||||
|
# and put the name of your object in the variable $own_user_objectName
|
||||||
|
# then execute the script, specifiy the targeted user and the targeted database(s)
|
||||||
|
# if you want to revert back the configuration, replace the variable $own_user_objectName with the name of the object of the person you took the ownership
|
||||||
|
|
||||||
|
#########################################################################################
|
||||||
|
#
|
||||||
|
# Database Value
|
||||||
|
#
|
||||||
|
#########################################################################################
|
||||||
|
|
||||||
|
####acceptance
|
||||||
|
$DBInstance = 'tot-2020-sql-acceptance.privatelink.03ddfc49f186.database.windows.net'#
|
||||||
|
$DBPassword = '6^_przWQ$?Ve7,n9'
|
||||||
|
$DBUsername = 'pgadmin'
|
||||||
|
|
||||||
|
###production
|
||||||
|
#$DBInstance = 'tot-2020-sql-production.privatelink.03ddfc49f186.database.windows.net'
|
||||||
|
#$DBPassword = 'zWdtg7oCZrAmTe1ec9fSv5OJ'
|
||||||
|
#$DBUsername = 'pgadmin'
|
||||||
|
|
||||||
|
###production
|
||||||
|
#$DBInstance = 'rosercloud-rpsql02.cy4z2xpdf3he.eu-central-1.rds.amazonaws.com'
|
||||||
|
#$DBUsername = 'admin'
|
||||||
|
#$DBPassword = 'wQNMJg3qgMCcU3e05Rsy'
|
||||||
|
|
||||||
|
|
||||||
|
#other
|
||||||
|
#$DBInstance = 'roserdb01.cy4z2xpdf3he.eu-central-1.rds.amazonaws.com'#
|
||||||
|
|
||||||
|
|
||||||
|
#$DBACredential = Get-Credential -UserName pgadmin -Message "Credentials for $DBInstance"
|
||||||
|
#$DBUsername = 'pgadmin'
|
||||||
|
|
||||||
|
|
||||||
|
#DBPassword = $DBACredential.GetNetworkCredential().Password
|
||||||
|
#$DBUsername = $DBACredential.UserName
|
||||||
|
|
||||||
|
#$DBUsername = 'pgadmin'
|
||||||
|
|
||||||
|
#Database=$database
|
||||||
|
$ConnectionString = "Server=$DBInstance;User Id=$DBUsername;Password=$DBPassword;TrustServerCertificate=True"
|
||||||
|
$VerbosePreference = 'Continue'
|
||||||
|
|
||||||
|
|
||||||
|
#########################################################################################
|
||||||
|
#
|
||||||
|
# User value
|
||||||
|
#
|
||||||
|
#########################################################################################
|
||||||
|
|
||||||
|
$list_of_known_users = [ordered]@{
|
||||||
|
Admin = [PSCustomObject]@{
|
||||||
|
"Name"="Admin"
|
||||||
|
"username"="admin"
|
||||||
|
"autologonname"=""
|
||||||
|
};
|
||||||
|
Administrator = [PSCustomObject]@{
|
||||||
|
"Name"="Administrator"
|
||||||
|
"username"="administrator"
|
||||||
|
"autologonname"=""
|
||||||
|
};
|
||||||
|
Anastasia = [PSCustomObject]@{
|
||||||
|
"Name"="Anastasia"
|
||||||
|
"username"="akroupkina"
|
||||||
|
"autologonname"="9mBIVk9rp6tQ9BFMbz21YQ=="
|
||||||
|
};
|
||||||
|
Henry = [PSCustomObject]@{
|
||||||
|
"Name"="Henry"
|
||||||
|
"username"="hchung"
|
||||||
|
"autologonname"="DW+WmQw34KPOJb2Ty9+DSg=="
|
||||||
|
};
|
||||||
|
Frans = [PSCustomObject]@{
|
||||||
|
"Name"="Frans"
|
||||||
|
"username"="fhaarman"
|
||||||
|
"autologonname"="Y2vW6jgau0cnKls57Bht7Q=="
|
||||||
|
};
|
||||||
|
Blake = [PSCustomObject]@{
|
||||||
|
"Name"="Blake"
|
||||||
|
"username"="bparrish"
|
||||||
|
"autologonname"="bparrish"
|
||||||
|
};
|
||||||
|
Besfort = [PSCustomObject]@{
|
||||||
|
"Name"="Besfort"
|
||||||
|
"username"="bhyseni"
|
||||||
|
"autologonname"="ExEghFzbxMdTNJ/Ygo/N3A=="
|
||||||
|
};
|
||||||
|
Kyle = [PSCustomObject]@{
|
||||||
|
"Name"="Kyle"
|
||||||
|
"username"="kpatel"
|
||||||
|
"autologonname"="LzD0rK0qkyaSGo6lfnuB2Q=="
|
||||||
|
};
|
||||||
|
Pierre = [PSCustomObject]@{
|
||||||
|
"Name"="Pierre"
|
||||||
|
"username"="pierretotal"
|
||||||
|
"autologonname"="/jLXczx+RxoY7ECZfyhy2A=="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#########################################################################################
|
||||||
|
# Fill with your user object name
|
||||||
|
#########################################################################################
|
||||||
|
$own_user_objectName = 'Besfort'
|
||||||
|
|
||||||
|
$ownAutologonname = $list_of_known_users.$own_user_objectName.autologonname
|
||||||
|
|
||||||
|
|
||||||
|
#get the target
|
||||||
|
$targetObjectName = $list_of_known_users.keys |Out-GridView -PassThru -Title "Select the target"
|
||||||
|
|
||||||
|
$targetName = $list_of_known_users.$targetObjectName.Name
|
||||||
|
$targetUserName = $list_of_known_users.$targetObjectName.Username
|
||||||
|
|
||||||
|
Write-output "You selected the user $targetName to take ownership "
|
||||||
|
|
||||||
|
$QuerySelectDatabases= "SELECT name FROM sys.databases order by name"
|
||||||
|
$targeted_DB= Invoke-Sqlcmd -ConnectionString $ConnectionString -Query $QuerySelectDatabases |Out-GridView -PassThru -Title "Select the targeted databases"
|
||||||
|
|
||||||
|
|
||||||
|
foreach( $database in $targeted_DB ) {
|
||||||
|
$DB_name = $database.Name
|
||||||
|
write-output "updating $DB_name"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
$queryVerifyPresenceUser = "
|
||||||
|
SELECT
|
||||||
|
CASE WHEN EXISTS
|
||||||
|
(
|
||||||
|
select pk_userid,username, createcomputer , firstname, lastname , autologonname, isactive from $DB_name.dbo.tblUser where username = '$targetUserName'
|
||||||
|
)
|
||||||
|
THEN 'TRUE'
|
||||||
|
ELSE 'FALSE'
|
||||||
|
END
|
||||||
|
"
|
||||||
|
write-output $queryVerifyPresenceUser
|
||||||
|
$boolean_presence_users = Invoke-Sqlcmd -ConnectionString $ConnectionString -Query $queryVerifyPresenceUser
|
||||||
|
write-verbose $boolean_presence_users.Column1
|
||||||
|
if($boolean_presence_users.Column1 -eq "FALSE"){
|
||||||
|
write-output "the user doesn't exist in the following database : $DB_name"
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
|
$QueryUpdatingUser= "
|
||||||
|
update $DB_name.dbo.tblUser
|
||||||
|
set isactive = 1,
|
||||||
|
autologonname = '$ownAutologonname'
|
||||||
|
where username = '$targetUserName';
|
||||||
|
"
|
||||||
|
Write-Output "Query to execute :"
|
||||||
|
Write-Output $QueryUpdatingUser
|
||||||
|
Write-Warning "Are you sure to proceed ?" -WarningAction Inquire
|
||||||
|
Invoke-Sqlcmd -ConnectionString $ConnectionString -Query $QueryUpdatingUser
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
Reference in New Issue
Block a user