<!--
{
  "availability" : [
    "macCatalyst: 13.0.0 -",
    "macOS: 10.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "Security",
  "identifier" : "/documentation/Security/CMSCertificateChainMode",
  "metadataVersion" : "0.1.0",
  "role" : "Enumeration",
  "symbol" : {
    "kind" : "Enumeration",
    "modules" : [
      "Security"
    ],
    "preciseIdentifier" : "c:@E@CMSCertificateChainMode"
  },
  "title" : "CMSCertificateChainMode"
}
-->

# CMSCertificateChainMode

Constants that can be set to specify what certificates to include in a signed message.

```
enum CMSCertificateChainMode
```

## Overview

Use these with the [`CMSEncoderSetCertificateChainMode(_:_:)`](/documentation/Security/CMSEncoderSetCertificateChainMode(_:_:)) function.

## Topics

### Constants

[`CMSCertificateChainMode.none`](/documentation/Security/CMSCertificateChainMode/none)

Don’t include any certificates.

[`CMSCertificateChainMode.signerOnly`](/documentation/Security/CMSCertificateChainMode/signerOnly)

Only include signer certificates.

[`CMSCertificateChainMode.chain`](/documentation/Security/CMSCertificateChainMode/chain)

Include the signer certificate chain up to but not including the root certificate.

[`CMSCertificateChainMode.chainWithRoot`](/documentation/Security/CMSCertificateChainMode/chainWithRoot)

Include the entire signer certificate chain, including the root certificate.

### Enumeration Cases

[`CMSCertificateChainMode.chainWithRootOrFail`](/documentation/Security/CMSCertificateChainMode/chainWithRootOrFail)



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)