Export (0) Print
Expand All
Expand Minimize

Set-UserPhoto

Exchange Online
 

Applies to: Exchange Server 2013, Exchange Online

Topic Last Modified: 2014-03-15

This cmdlet is available in on-premises Exchange Server 2013 and in the cloud-based service. Some parameters and settings may be exclusive to one environment or the other.

Use the Set-UserPhoto cmdlet to configure the user photos feature that allows users to associate a picture with their account. User photos are stored in Active Directory and appear in on-premises and cloud-based client applications, such as Microsoft Office Outlook Web App, Microsoft Office Lync, and Microsoft SharePoint.

For information about the parameter sets in the Syntax section below, see Syntax.

Set-UserPhoto -Identity <MailboxIdParameter> -PictureData <Byte[]> <COMMON PARAMETERS>
Set-UserPhoto -Cancel <SwitchParameter> -Identity <MailboxIdParameter> <COMMON PARAMETERS>
Set-UserPhoto -Identity <MailboxIdParameter> -Preview <SwitchParameter> [-PictureData <Byte[]>] [-PictureStream <Stream>] <COMMON PARAMETERS>
Set-UserPhoto -Identity <MailboxIdParameter> -PictureStream <Stream> <COMMON PARAMETERS>
Set-UserPhoto -Identity <MailboxIdParameter> -Save <SwitchParameter> <COMMON PARAMETERS>
COMMON PARAMETERS: [-Confirm [<SwitchParameter>]] [-DomainController <Fqdn>] [-IgnoreDefaultScope <SwitchParameter>] [-WhatIf [<SwitchParameter>]]

This example uploads and saves a photo to Paul Cannon's user account using a single command.

Set-UserPhoto "Paul Cannon" -PictureData ([System.IO.File]::ReadAllBytes("C:\Users\Administrator\Desktop\PaulCannon.jpg"))

This example shows how to use two commands to upload and save a preview photo to Ann Beebe's user account.

This command uploads a preview photo to Ann Beebe's user account.

Set-UserPhoto "Ann Beebe" -PictureData ([System.IO.File]::ReadAllBytes("C:\Users\Administrator\Desktop\AnnBeebe.jpg")) -Preview

To save the preview photo that was uploaded using the previous command, run the following command.

Set-UserPhoto "Ann Beebe" -Save

To delete the preview photo that was uploaded using the first command in this example, run the following command.

Set-UserPhoto "Ann Beebe" -Cancel

The user photos feature allows users to associate a picture with their account. User photos are stored in the user's Active Directory account and in the root directory of the user's Exchange mailbox. Administrators use the Set-UserPhoto cmdlet or the Exchange Administration Center (EAC) to configure user photos. Users can upload, preview, and save a user photo to their account by using the Outlook Web App Options page. When a user uploads a photo, a preview of the photo is displayed on the Outlook Web App Options page. This is the preview state, and creates the same result as running the Set-UserPhoto cmdlet using the Preview parameter. If the user clicks Save, the preview photo is saved as the user's photo. This is the same result as running the Set-UserPhoto -Save command or running both the Set-UserPhoto -Preview and Set-UserPhoto -Save commands. If the user cancels the preview photo on the Outlook Web App Options page, then the Set-UserPhoto -Cancel command is called.

A user photo must be set for a user before you can run the Get-UserPhoto cmdlet to view information about the user's photo. Otherwise, you'll get an error message saying the user photo doesn't exist for the specified user. Alternatively, you can run the Get-UserPhoto -Preview command to view information about a preview photo.

You need to be assigned permissions before you can run this cmdlet. Although all parameters for this cmdlet are listed in this topic, you may not have access to some parameters if they're not included in the permissions assigned to you. To see what permissions you need, see the "Recipient provisioning permissions" section in the Recipients permissions topic.

 

Parameter Required Type Description

Cancel

Required

System.Management.Automation.SwitchParameter

The Cancel parameter deletes the photo currently uploaded as the preview photo. To delete the photo currently associated with a user's account, use the Remove-UserPhoto command. The Cancel parameter only deletes the preview photo.

Identity

Required

Microsoft.Exchange.Configuration.Tasks.MailboxIdParameter

The Identity parameter specifies the identity of the user. You can use one of the following values:

  • GUID

  • Distinguished name (DN)

  • Display name

  • Domain\Account

  • User principal name (UPN)

  • LegacyExchangeDN

  • SmtpAddress

  • Alias

PictureData

Required

System.Byte[]

The PictureData parameter specifies the photo file that will be uploaded to the user's account. Use the following syntax for this parameter. ([System.IO.File]::ReadAllBytes("<file name and path>")). The following is an example. ([System.IO.File]::ReadAllBytes("C:\Documents\Pictures\MyPhoto.jpg")).

PictureStream

Required

System.IO.Stream

The PictureStream parameter specifies the photo that will be uploaded to the user's account. This parameter is used by client applications such as Outlook Web App when users add a photo. To upload a photo using Windows PowerShell, use the PictureData parameter to specify the photo file.

Preview

Required

System.Management.Automation.SwitchParameter

The Preview parameter uploads a preview photo for the user account. A preview photo is the photo object that is uploaded to the user's account, but isn’t saved. For example, if a user uploads a photo in Outlook Web App Options to preview before saving it. If you use the Preview parameter to upload a preview photo, you have to run the Set-UserPhoto -Save command to save it as the user’s photo.

Save

Required

System.Management.Automation.SwitchParameter

The Save parameter specifies that the photo that's uploaded to the user's account will be saved as the user's photo.

Confirm

Optional

System.Management.Automation.SwitchParameter

The Confirm switch causes the command to pause processing and requires you to acknowledge what the command will do before processing continues. You don't have to specify a value with the Confirm switch.

DomainController

Optional

Microsoft.Exchange.Data.Fqdn

This parameter is available only in on-premises Exchange 2013.

The DomainController parameter specifies the fully qualified domain name (FQDN) of the domain controller that writes this configuration change to Active Directory.

IgnoreDefaultScope

Optional

System.Management.Automation.SwitchParameter

The IgnoreDefaultScope parameter instructs the command to ignore the default recipient scope setting for the Exchange Management Shell session and use the entire forest as the scope. This allows the command to access Active Directory objects that aren't currently in the default scope. Using the IgnoreDefaultScope parameter introduces the following restrictions:

  • You can't use the DomainController parameter. The command uses an appropriate global catalog server automatically.

  • You can only use the DN for the Identity parameter. Other forms of identification, such as alias or GUID, aren't accepted.

WhatIf

Optional

System.Management.Automation.SwitchParameter

The WhatIf switch instructs the command to simulate the actions that it would take on the object. By using the WhatIf switch, you can view what changes would occur without having to apply any of those changes. You don't have to specify a value with the WhatIf switch.

To see the input types that this cmdlet accepts, see Cmdlet Input and Output Types. If the Input Type field for a cmdlet is blank, the cmdlet doesn’t accept input data.

To see the return types, which are also known as output types, that this cmdlet accepts, see Cmdlet Input and Output Types. If the Output Type field is blank, the cmdlet doesn’t return data.

 
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft