Commands › Exchange Online
New-ExchangeCertificate
Create and renew self-signed certificates, and to create certificate requests (also known as certificate signing requests or CSRs) for new certificates and certificate renewals from a certification authority (CA).
Quick start script
# New-ExchangeCertificate — quick start (serv365.ai)
# 1. Connect (app-only shown; interactive: omit the certificate parameters)
Connect-ExchangeOnline -CertificateThumbprint $thumb -AppId $appId -Organization $org
# 2. Capture the current state first — you cannot roll back what you never recorded
$before = Get-ExchangeCertificate
$before | Format-List
# 3. Make the change (dry run first)
New-ExchangeCertificate -WhatIf
New-ExchangeCertificate
# 4. Verify and diff
$after = Get-ExchangeCertificate
Compare-Object ($before | Out-String) ($after | Out-String)
Syntax — 2 parameter sets
Request
New-ExchangeCertificate [-BinaryEncoded] [-GenerateRequest] [-RequestFile <String>]
[-Confirm]
[-DomainController <Fqdn>]
[-DomainName <MultiValuedProperty>]
[-Force]
[-FriendlyName <String>]
[-IncludeAcceptedDomains]
[-IncludeAutoDiscover]
[-IncludeServerFQDN]
[-IncludeServerNetBIOSName]
[-Instance <X509Certificate2>]
[-KeySize <Int32>]
[-PrivateKeyExportable <Boolean>]
[-Server <ServerIdParameter>]
[-SubjectKeyIdentifier <String>]
[-SubjectName <X500DistinguishedName>]
[-WhatIf]
[<CommonParameters>]
Certificate
New-ExchangeCertificate [-Services <AllowedServices>]
[-Confirm]
[-DomainController <Fqdn>]
[-DomainName <MultiValuedProperty>]
[-Force]
[-FriendlyName <String>]
[-IncludeAcceptedDomains]
[-IncludeAutoDiscover]
[-IncludeServerFQDN]
[-IncludeServerNetBIOSName]
[-Instance <X509Certificate2>]
[-KeySize <Int32>]
[-PrivateKeyExportable <Boolean>]
[-Server <ServerIdParameter>]
[-SubjectKeyIdentifier <String>]
[-SubjectName <X500DistinguishedName>]
[-WhatIf]
[<CommonParameters>]
Parameters (20)
Reference facts derived from Microsoft documentation, © Microsoft, licensed CC BY 4.0; restructured with original guidance by serv365.ai.