2 votes

Erreur du paramètre Get-CsUserSession StartDate & informations d'identification sans demande de mot de passe

EDITAR:

  1. Je veux récupérer les données de session d'un compte spécifique en utilisant la méthode suivante PowerShell. D'après cette documentation : https://docs.microsoft.com/en-us/powershell/module/skype/get-csusersession?view=skype-ps Get-CsUserSession est en mesure de le faire. J'utilise cette commande selon l'exemple du lien supérieur

    Get-CsUserSession -User account@companyX.onmicrosoft.com -StartDate "6/1/2018 07:00 PM"

    et ensuite j'obtiens l'erreur suivante :

    A parameter cannot be found that matches parameter name 'StartDate'.
        + CategoryInfo          : InvalidArgument: (:) [Get-CsUserSession], ParameterBindingException
        + FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.Rtc.Management.Hosted.Data.GetCsUserSessionCmdlet
        + PSComputerName        : admin1e.online.lync.com

    Qu'est-ce qui ne va pas dans ce cas et quelle est la déclaration correcte ?

  2. J'établis une connexion au service Skype for business avec le script suivant : $credential = Get-Credential Import-Module MSOnline Connect-MsolService -Credential $credential Import-Module SkypeOnlineConnector $lyncSession = New-CsOnlineSession -Credential $credential Import-PSSession $lyncSession

Ce que je voudrais faire, c'est de définir l'utilisation d'un compte statique particulier et d'un mot de passe à partir du script de PowerShell (en utilisant une sorte de chaînes de variables de déclaration), au lieu d'exécuter cette commande et de devoir taper les informations d'identification dans une fenêtre distincte. Ce qui signifie que je veux éviter d'utiliser $credential = Get-Credential commande. Est-ce possible ?

2voto

robdy Points 3415

Comme indiqué dans la documentation que vous avez liée (seulement au paragraphe supérieur cependant), vous devez utiliser StartTime no StartDate . L'erreur que vous recevez est le symptôme typique d'une erreur de frappe dans le nom du paramètre ou de l'inexistence de ce paramètre pour cette fonction.

Je demanderai à changer l'exemple dans les docs un peu plus tard, il semble que quelqu'un qui les a écrites se soit mélangé avec une autre cmdlet.

Edit : pour stocker les informations d'identification, vous pouvez exporter votre mot de passe comme ceci :

"P@ssword1" | ConvertTo-SecureString -AsPlainText -Force | ConvertFrom-SecureString | Out-File C:\Users\username\password2.txt

Et puis importer comme ça :

$password = Get-Content -Path "C:\Users\USUARIOPC\password2.txt" | ConvertTo-SecureString -String $password
$credential = New-Object System.Management.Automation.PsCredential("yourlogin@domain.com", $password)

0voto

Sudoku Points 71

En attendant, j'ai essayé la requête suivante. Il n'est probablement pas très sûr d'utiliser un mot de passe dans un script mais pour nous qui voulons le faire comme ça, c'est une bonne solution.

$username = "account1@companyX.onmicrosoft.com"
$password = "abcdefg"
$secstr = New-Object -TypeName System.Security.SecureString
$password.ToCharArray() | ForEach-Object {$secstr.AppendChar($_)}
$cred = new-object -typename System.Management.Automation.PSCredential -argumentlist $username, $secstr

$credential = $cred
Import-Module MSOnline
Connect-MsolService -Credential $credential
Import-Module SkypeOnlineConnector
$SFBSession = New-CsOnlineSession -Credential $credential
Import-PSSession $SFBSession

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X