Question
tester les accès
- Feredyr
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 5
- Remerciements reçus 0
il y a 13 ans 2 semaines #14212
par Feredyr
tester les accès a été créé par Feredyr
Bonjour,
je débute en PowerShell et pour le moment je ne vois pas comment faire...
Voilà mon problème:
Je dois tester les accès d'un compte sur un grand parc de serveur.
La liste des serveurs j'arrive a l'extraire du CSV pour n'en garder que les noms.
Par contre mon Boss veux que je me connecte sur chaque serveur (plus de 1000) pour vérifier qu'on est bien habilité dessus, et vérifier certaines infos (modèle etc)
le début de mon script donne ca
[code:1]
$ListingServer = Import-Csv -Path \".\test-import1.csv\" -Delimiter \";\"
foreach ($Server in $ListingServer)
{
Write-Host $Server.Nom
}
[/code:1]
ce qui marche très bien. Mais je ne vois pas comment lancer la connection TSE vers $Server.nom
Une Idée ?
Merci
je débute en PowerShell et pour le moment je ne vois pas comment faire...
Voilà mon problème:
Je dois tester les accès d'un compte sur un grand parc de serveur.
La liste des serveurs j'arrive a l'extraire du CSV pour n'en garder que les noms.
Par contre mon Boss veux que je me connecte sur chaque serveur (plus de 1000) pour vérifier qu'on est bien habilité dessus, et vérifier certaines infos (modèle etc)
le début de mon script donne ca
[code:1]
$ListingServer = Import-Csv -Path \".\test-import1.csv\" -Delimiter \";\"
foreach ($Server in $ListingServer)
{
Write-Host $Server.Nom
}
[/code:1]
ce qui marche très bien. Mais je ne vois pas comment lancer la connection TSE vers $Server.nom
Une Idée ?
Merci
Connexion ou Créer un compte pour participer à la conversation.
- Philippe
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 1778
- Remerciements reçus 21
il y a 13 ans 2 semaines #14213
par Philippe
Réponse de Philippe sur le sujet Re:tester les accès
salut Feredyr
Je crois pas que l'on puisse ouvrir une connection TSE avec powershell (du moins faire des manip dans la session).
quel type d'habilitation tu dois avoir (admin ou que bureau a distance ou autre)
Regarde les packs sur ce site
archive.msdn.microsoft.com/PowerShellPack
en particulier < PSSystemTools > pour les infos sur le serveurs<br><br>Message édité par: 6ratgus, à: 11/03/13 11:36
Je crois pas que l'on puisse ouvrir une connection TSE avec powershell (du moins faire des manip dans la session).
quel type d'habilitation tu dois avoir (admin ou que bureau a distance ou autre)
Regarde les packs sur ce site
archive.msdn.microsoft.com/PowerShellPack
en particulier < PSSystemTools > pour les infos sur le serveurs<br><br>Message édité par: 6ratgus, à: 11/03/13 11:36
Connexion ou Créer un compte pour participer à la conversation.
- Feredyr
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 5
- Remerciements reçus 0
il y a 13 ans 2 semaines #14216
par Feredyr
Réponse de Feredyr sur le sujet Re:tester les accès
Je dois etre admin des serveurs.
pourquoi ?
pourquoi ?
Connexion ou Créer un compte pour participer à la conversation.
- SiSMik
- Hors Ligne
- Membre platinium
-
Réduire
Plus d'informations
- Messages : 492
- Remerciements reçus 0
il y a 13 ans 2 semaines #14224
par SiSMik
Réponse de SiSMik sur le sujet Re:tester les accès
Connexion ou Créer un compte pour participer à la conversation.
- ANTRI Mohamed
- Hors Ligne
- Membre premium
-
Réduire
Plus d'informations
- Messages : 124
- Remerciements reçus 0
il y a 13 ans 2 semaines #14229
par ANTRI Mohamed
Réponse de ANTRI Mohamed sur le sujet Re:tester les accès
Si tu est dans un environnement active directory tu peut utiliser [code:1]Get-ADComputer[/code:1] avec un attribut -Server ou tu pourra spécifier le nom des serveurs pour lesquels tu veut récup les infos. Après tu aura beaucoup de paramètre, par exemple -OperatingSystem pour obtenir l'OS du serveur en question. par contre si tu n'est pas dans un environnement AD tu pourra utiliser [code:1]Get-WmiObject Win32_OperatingSystem[/code:1]
Connexion ou Créer un compte pour participer à la conversation.
- Philippe
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 1778
- Remerciements reçus 21
il y a 13 ans 1 semaine #14256
par Philippe
Réponse de Philippe sur le sujet Re:tester les accès
salut Feredyr
pour etre admin de tous les serveurs d'un domaine il te suffit d'etre dans le groupe \"admins du domaine\" de ton AD.
Donc je pense que tu veux etre admin local sur chaques serveurs !
je dirais (toujours dans l'hypothèse d'un domaine) qu'une GPO ferait l'affaire mais c'est pas du powershell.
une boucle avec la fonction de benduru t'ouvrira des sessions sur les serveurs mais tu ne sauras pas si t'est admin.
et faudra les fermer manuellement.

Il reste cette solution :
Vérifier le groupe admin de chaques serveurs !
[code:1]
# Get-LocalGroupMembers.ps1
param ([String]$machine='.',
[String]$Groupe=$(Throw 'Nom de groupe obligatoire ! '))
$connexion = [ADSI]\"WinNT://$machine/$groupe,group\"
$connexion.psbase.invoke('Members') |
foreach{$_.GetType().InvokeMember('Name', 'GetProperty',
$null, $_, $null)}[/code:1]
fonction extraite du livre du menu de gauche
tu la rajoute a ta boucle proposé au debut avec quelque adaptation et tu traite les reponses biensur !!!
Pour finir ca devrait donner un truc comme ca :
[code:1]$ListingServer = Import-Csv -Path \".\test-import1.csv\" -Delimiter \";\"
foreach ($Server in $ListingServer)
{
$Serveur=$Server.Nom
$utilisateur_que_tu_test='mon-nom'
$Groupe='administrateurs'
$connexion = [ADSI]\"WinNT://$Serveur/$groupe,group\"
$ok = 0
$connexion.psbase.invoke('Members') | foreach{if ($_.GetType().InvokeMember('Name', 'GetProperty', $null, $_, $null) -eq $utilisateur_que_test) {$ok=1} }
if ($ok)
{write-host \"$serveur ok\"}
else
{write-host \"$serveur KO\"}
}[/code:1]
bonne vacances<br><br>Message édité par: Arnaud, à: 12/03/13 20:55
pour etre admin de tous les serveurs d'un domaine il te suffit d'etre dans le groupe \"admins du domaine\" de ton AD.
Donc je pense que tu veux etre admin local sur chaques serveurs !
je dirais (toujours dans l'hypothèse d'un domaine) qu'une GPO ferait l'affaire mais c'est pas du powershell.
une boucle avec la fonction de benduru t'ouvrira des sessions sur les serveurs mais tu ne sauras pas si t'est admin.
et faudra les fermer manuellement.
Il reste cette solution :
Vérifier le groupe admin de chaques serveurs !
[code:1]
# Get-LocalGroupMembers.ps1
param ([String]$machine='.',
[String]$Groupe=$(Throw 'Nom de groupe obligatoire ! '))
$connexion = [ADSI]\"WinNT://$machine/$groupe,group\"
$connexion.psbase.invoke('Members') |
foreach{$_.GetType().InvokeMember('Name', 'GetProperty',
$null, $_, $null)}[/code:1]
fonction extraite du livre du menu de gauche
tu la rajoute a ta boucle proposé au debut avec quelque adaptation et tu traite les reponses biensur !!!
Pour finir ca devrait donner un truc comme ca :
[code:1]$ListingServer = Import-Csv -Path \".\test-import1.csv\" -Delimiter \";\"
foreach ($Server in $ListingServer)
{
$Serveur=$Server.Nom
$utilisateur_que_tu_test='mon-nom'
$Groupe='administrateurs'
$connexion = [ADSI]\"WinNT://$Serveur/$groupe,group\"
$ok = 0
$connexion.psbase.invoke('Members') | foreach{if ($_.GetType().InvokeMember('Name', 'GetProperty', $null, $_, $null) -eq $utilisateur_que_test) {$ok=1} }
if ($ok)
{write-host \"$serveur ok\"}
else
{write-host \"$serveur KO\"}
}[/code:1]
bonne vacances<br><br>Message édité par: Arnaud, à: 12/03/13 20:55
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.048 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- tester les accès