# Irdeto on Web

This article describes how to configure Irdeto DRM with THEOplayer.

Head to our page on [DRM](https://docs-preview.optiview.dolby.com/pr-860/theoplayer/how-to-guides/web/drm/introduction.md) for more general information.

## Integration

We provide open-source DRM integrations which are easy to maintain and allow for a modular approach. You can find them in the [DRM integration samples repository](https://github.com/THEOplayer/samples-drm-integration), alongside guides on how to integrate and use them.

The Irdeto integration can be found [here](https://github.com/THEOplayer/samples-drm-integration/tree/master/web/src/integration/irdetocontrol).

## Pre-integration

> **Note**
>
> When integrating DRM for the first time or updating your integration, the DRM integration described above is preferred over the pre-integration below.

```js
if (HLS) {
    let drmConfiguration = {
        "integration": "irdeto",
        "crmId": "<CRM_ID>",
        "accountId": "<ACCOUNT_ID>",
        "contentId": "<CONTENT_ID>",
        "keyId": "<KEY_ID>",
        "applicationId": "<APPLICATION_ID>"
        "fairplay": {
            "licenseAcquisitionURL": "<LICENSE_KEY_URL_FAIRPLAY>",
            "certificateURL": "<CERTIFICATE_URL>"
        }
    };
    player.source = {
        "sources": {
            "src": "<HLS_STREAM_URL>",
            "type": "application/x-mpegurl",
            "contentProtection": drmConfiguration
        }
    }
} else if (DASH) {
    let drmConfiguration = {
        "integration": "irdeto",
        "crmId": "<CRM_ID>",
        "accountId": "<ACCOUNT_ID>",
        "contentId": "<CONTENT_ID>",
        "keyId": "<KEY_ID>",
        "applicationId": "<APPLICATION_ID>",
        "playready": {
            "licenseAcquisitionURL": "<LICENSE_KEY_URL_PLAYREADY>"
        },
        "widevine": {
            "licenseAcquisitionURL": "<LICENSE_KEY_URL_WIDEVINE>"
        }
    };
    player.source = {
        "sources": {
            "src": "<DASH_STREAM_URL>",
            "type": "application/dash+xml",
            "contentProtection": drmConfiguration
        }
    }
}
```

## Resources

* <https://irdeto.com/video-entertainment/multi-drm-and-rights-management/>

## Related articles

* [Axinom](https://docs-preview.optiview.dolby.com/pr-860/theoplayer/how-to-guides/web/drm/axinom.md)
* [castLabs DRMToday](https://docs-preview.optiview.dolby.com/pr-860/theoplayer/how-to-guides/web/drm/castlabs-drmtoday.md)
* [EZDRM](https://docs-preview.optiview.dolby.com/pr-860/theoplayer/how-to-guides/web/drm/ezdrm.md)
* [Intertrust ExpressPlay](https://docs-preview.optiview.dolby.com/pr-860/theoplayer/how-to-guides/web/drm/intertrust-expressplay.md)
* [Irdeto](https://docs-preview.optiview.dolby.com/pr-860/theoplayer/how-to-guides/web/drm/irdeto.md)
* [Microsoft Azure](https://docs-preview.optiview.dolby.com/pr-860/theoplayer/how-to-guides/web/drm/microsoft-azure.md)
* [Nagra Conax Contego](https://docs-preview.optiview.dolby.com/pr-860/theoplayer/how-to-guides/web/drm/nagra-conax-contego.md)
