Question WIN 10 , TOKEN ADMIN , REMOTE SCRIPTS

Plus d'informations
il y a 3 ans 6 mois #23299 par Alexis
Bonjour à toutes et tous,

En plein changement de parc machine on installe comme tlm des WINDOWS 10 par centaines .... avec leurs lots de problèmes ;oD je ne m'etalerai pas sur tous les sujets, ça serait long ;D Mais sur un en particulier.

L'execution de scripts powershell poussés par des GPO ORDINATEURS, en script de démarrage.

Windows 10 pose un gros probleme avec son TOKEN admin,

On ne peut pas desactiver l'UAC de windows, sinon toutes les applis MICROSOFT liées au STORE MICROSOFT ne fonctionnent plus. Genre IE, EDGE, LA CALCULATRICE et bien d'autre !!! Elles ne s'executent plus du tout.

On est donc obligé de laisser l'UAC au minimum sur les WIN 10.

Le probleme de l'UAC, est qu'elle nous oblige à utiliser le TOKEN admin, même depuis une session administrateur.

Si je lance mon Package de puis ma session administrateur du domaine et administrateur local de la machine, le package ne s'installe pas. il faut que je fasse un clic droit \" executer en tant qu'admin\" pour que cela fonctionne.

Mon probleme est là je n'arrive pas à executer mes script avec le token admin. Et uniquement sur les windows 10.

Les runas n'y font rien.

J'ai un package qui check un produit. si la version n'est pas la bonne, il doit le mettre à jour, et je n'y arrive pas via GPO alors que tout fonctionne sur les autres OS. J'ai baissé les niveaux de secu au max pour les tests.

Je manque de formation sur le sujet! j’étudierai toutes pistes serieuses !!

Info:
qd on passe le registre sur EnableLUA 0 , cela fonctionne. mais bcp de choses ne fonctionnent plus apres.

avec set-executionpolicy sur unrestrcited ou remotesigned c'est pareil.

Avec le script copié localement sur le poste et éxécuté localement c'est pareil.

Tout ça que sur les win 10.

Merci pour votre lecture ! bonne journée.<br><br>Message édité par: Alexis, à: 14/03/17 13:56

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 3 ans 4 mois #23642 par Alexis
Bonjour à toutes et tous,

Je UP le sujet car je suis toujours bloqué.

voilà mon dernier test réalisé sur ces PUT**** de windows 10 !!


Voilà le block nécessaire.

[code:1]$Command = C:\test\test.ps1

$cmd = 'powershell.exe -noprofile -ExecutionPolicy unrestricted Start-Process \&quot;' + $psHome + '\powershell.exe\&quot; -Verb Runas -ArgumentList ' + '''-command \&quot;' + $command +\&quot;`\&quot;'\&quot;

Invoke-Expression $cmd [/code:1]


Dans mon fichier c:\test\test.ps1 j'ai ça :

[code:1]
get-content \&quot;c:\test2\&quot; | remove-item [/code:1]



Et quand j'execute le script que tu m'as envoyé, j'obtiens ça :

get-content : L'accès au chemin d'accès 'C:\test2' est refusé.
Au caractère C:\test\test.ps1:1 : 1
+ get-content \&quot;c:\test2\&quot; | remove-item
+ ~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : PermissionDenied: (C:\test2:String) [Get-Content], UnauthorizedAccessException
+ FullyQualifiedErrorId : GetContentReaderUnauthorizedAccessError,Microsoft.PowerShell.Commands.GetContentCommand

Donc il appelle bien le script dans test.ps1, le lance aec tous les parametres necessaires, et ploum ploum ! je ne suis pas admin !! j'ai pas le droit d'entrer dans un repertoire ! Alors que le compte machine est autorisé en modification et que le script est lancé depuis une session administrateur local ! Ca fonctionne si je lance la console powershell avec un clic droit executer en tant qu'admin !!!! C'est fou

Message édité par: Alexis, à: 16/05/17 15:49

Message édité par: Alexis, à: 16/05/17 15:50<br><br>Message édité par: Alexis, à: 16/05/17 15:50

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 3 ans 4 mois #23643 par Matthew BETTON
Bonjour,

Tu obtiendras toujours un message d'erreur du type \&quot;accés refusé\&quot; lorsque tu utilises la Cmdlets Get-Content sur un chemin/dossier/répertoire ... (sinon \&quot;Get-Content : Impossible de trouver une partie du chemin d'accès 'D:\TEMP\'.\&quot;).

Get-Content sert à récupérer/lire le contenu d'un fichier de type texte, pas à lister le contenu d'un répertoire.

Si c'est bien cette dernière action que tu cherches à faire, commences par utiliser 'Get-Childitem'.

PS&gt;Get-Help Get-Content

NOM
Get-Content

RÉSUMÉ
Obtient le contenu de l'élément à l'emplacement spécifié.


SYNTAXE
Get-Content [-Path] &lt;String[]&gt; [-Credential &lt;PSCredential&gt;] [-Exclude &lt;String[]&gt;] [-Filter &lt;String&gt;] [-Force]
[-Include &lt;String[]&gt;] [-ReadCount &lt;Int64&gt;] [-Tail &lt;Int32&gt;] [-TotalCount &lt;Int64&gt;] [-UseTransaction
[&lt;SwitchParameter&gt;]] [&lt;CommonParameters&gt;]

Get-Content [-Credential &lt;PSCredential&gt;] [-Exclude &lt;String[]&gt;] [-Filter &lt;String&gt;] [-Force] [-Include &lt;String[]&gt;]
[-ReadCount &lt;Int64&gt;] [-Tail &lt;Int32&gt;] [-TotalCount &lt;Int64&gt;] -LiteralPath &lt;String[]&gt; [-UseTransaction
[&lt;SwitchParameter&gt;]] [&lt;CommonParameters&gt;]


DESCRIPTION
L'applet de commande Get-Content obtient le contenu de l'élément à l'emplacement spécifié par le chemin d'accès,
par exemple le texte d'un fichier. Elle lit le contenu ligne par ligne et retourne une collection d'objets, chacun
représentant une ligne de contenu.

À compter de Windows PowerShell3.0, Get-Content peut également obtenir un nombre spécifique de lignes à partir du
début ou de la fin d'un élément.


LIENS CONNEXES
Online Version: go.microsoft.com/fwlink/p/?linkid=290491
Add-Content
Clear-Content
Set-Content
about_Providers

REMARQUES
Pour consulter les exemples, tapez : \&quot;get-help Get-Content -examples\&quot;.
Pour plus d'informations, tapez : \&quot;get-help Get-Content -detailed\&quot;.
Pour obtenir des informations techniques, tapez : \&quot;get-help Get-Content -full\&quot;.
Pour l'aide en ligne, tapez : \&quot;get-help Get-Content -online\&quot;

<br><br>Message édité par: Matthew BETTON, à: 16/05/17 16:10

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 3 ans 4 mois #23644 par Alexis
L'erreur de boulet ;oD j'ai tapé ça pour l'exemple ;oD

Mais cela ne fonctionne tjs pas en GPO ;oD

merci pour cette remarque qui tombe à point nommé ! ;oD

Ne pas confondre vitesse et précipitation !!!!

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 3 ans 4 mois #23645 par Matthew BETTON
Alexis écrit:

Mais cela ne fonctionne tjs pas en GPO ;oD


... Cela ressemble beaucoup à ça :

stackoverflow.com/questions/33351002/app...-fails-on-windows-10

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 3 ans 4 mois #23649 par Alexis
Bonjour Matthew ! Merci pour ta réponse, mais ce n'est pas là mon probleme, j'avais renconté ce souci déjà avec windows 7, et j'avais apporté cette solution sur l'ensemble du parc... J'ai vérifié à nouveau !

Je vais donner un exemple plus précis.

Voici un script qui supprime et recréé un compte local et le met administrateur avec un mot de passe qui n'expire pas. avec un mot de passe crypté.

[code:1]
$Key = [byte]85,40,32,13,44,11,09,98,11,34,12,99,52,11,09,98
$password = Get-Content \\xxxxx\xxxxo$\Scripts\LocalADMmig\cred.pwd | Convertto-SecureString -Key $key
$BSTR = [System.Runtime.InteropServices.Marshal]::«»SecureStringToBSTR($Password)
$PlainPassword = [System.Runtime.InteropServices.Marshal]::«»PtrToStringAuto($BSTR)

$compname = $env:computername
$cn = [ADSI]\&quot;WinNT://$env:computername\&quot;
$cn.Delete(\&quot;user\&quot;,\&quot;CompteAdmin\&quot;«»)

$compname = $env:computername
$cn = [ADSI]\&quot;WinNT://$env:computername\&quot;
$user = $cn.Create(\&quot;User\&quot;,\&quot;CompteAdmin\&quot;«»)
$user.SetPassword($Plainpassword)
$user.setinfo()
$user.description = \&quot;Admin Local\&quot;
$user.SetInfo()
$user.UserFlags = 65536
$user.SetInfo()
$UserName = \&quot;CompteAdmin\&quot;
$AdminGroup = [ADSI]\&quot;WinNT://$env:computername/Administrateurs,group\&quot;
$Usere = [ADSI]\&quot;WinNT://$env:computername/$UserName,user\&quot;
$AdminGroup.Add($Usere.Path)

[/code:1]


Sur windows 7 si j'execute ce script depuis une session administrateur local. Ou via GPO, il fonctionne.


Sur Windows 10 j'ai des erreurs d'elevation.
Il faut que je lance la console powershell depuis une session admin(logique jusque là) mais que dans la session admin je fasse clic droit, puis executer en tant qu'administrateur. Alors que je suis admin du poste.. Mais sans le Token ADMIN fournit par le clic droit, mon script ne s'execute pas. Enfin il se lance mais n'a pas les droits pour créer le user.

;oD



edit : Et j'ai toutes les POLICY qui gerent le comportement de l'elevation des administrateurs de configurées en ma faveur .... (J'ai peut être oublié qqch de ce coté là) Mais j'ai l'impression d'être le seul à être confronté à ces problèmes !

J'ai même pensé que cela pouvait provenir de nos masters. Avec les dernieres Build de W10 vierge je rencontre les soucis aussi ... et j'ai check toute la DEFAUTLDOMAINPOLICY, je n'ai rien de configuré à l'intérieur concernant les elevations ! Ca doit être un truc bête et je passe à coté ! A force d'avoir la tête dans le guidon comme on dit ! ;OD<br><br>Message édité par: Alexis, à: 17/05/17 13:29

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.383 secondes
Propulsé par Kunena