# Modelos predefinidos e políticas personalizadas

Escolha uma política de licença DRM-X correspondente ao pacote publicado, incluindo durações, proteção de saída e níveis de qualidade.

Escolha uma política para o seu conteúdo

A política deve corresponder ao modelo de chaves usado para criptografar o vídeo.

- 01**Single Key Protection**

Use uma única política para todas as faixas: single-software, single-hdcp ou single-hardware.

- 02**Multi-key Quality Tiered**

Use multi-tier-standard para aplicar regras de segurança diferentes a áudio, SD, HD e UHD.

Escolha uma política que corresponda ao modelo da chave do pacote. A tecla única usa uma regra uniforme; os pacotes em camadas usam regras de faixa separadas.

Política de licença 

## Use um modelo de política chamado do lado do servidor[#](#use-a-server-side-named-policy-template)



Modelos nomeados removem a maior parte da política JSON do código da aplicação. DRM-X expande o nome seleccionado para uma política canónica v2, valida-a contra o pacote real e assina o resultado no DRM License Token.



Escolha uma política para o seu conteúdo

A política deve corresponder ao modelo de chaves usado para criptografar o vídeo.

- 01**Single Key Protection**

Use uma única política para todas as faixas: single-software, single-hdcp ou single-hardware.

- 02**Multi-key Quality Tiered**

Use multi-tier-standard para aplicar regras de segurança diferentes a áudio, SD, HD e UHD.

Use o modelo que corresponde ao modelo de chave selecionado quando o conteúdo foi empacotado. 


| Nome | Modelo de pacote | Comportamento | 
| --- | --- | --- |

| `single-software` | Chave única | Ampla compatibilidade, software DRM, no HDCP mínimo. | 

| `single-hdcp` | Chave única | Software DRM com proteção de saída HDCP 1.x-class. | 

| `single-hardware` | Chave única | Segurança de hardware DRM com proteção de saída HDCP de 2,2 classes. | 

| `multi-tier-standard` | Multi- chave | Software Audio/SD, software HD + HDCP, hardware UHD1 + HDCP 2.2. | 


```
{
  "contentId": "course-12-lesson-4",
  "contentType": "vod",
  "drmSystem": "widevine",
  "subject": "customer-user-1001",
  "playbackMode": "streaming",
  "licensePolicyTemplate": "multi-tier-standard",
  "useEnvironmentDefaults": true,
  "maximumQualityTier": "auto"
}
```



Com `useEnvironmentDefaults: true`, o modelo fornece segurança enquanto as configurações de ambiente salvas controlam DRM License Token validade, fluxos simultâneos e renovação. Configure- as em `false` quando quiser os valores operacionais exatos do modelo.



Os aplicativos podem descobrir os built-ins atuais através de `GET /api/v1/playback/license-policy-templates`. Os nomes dos modelos são insensíveis à entrada e canonicalizados na solicitação.





Política de licença 

## Enviar uma política personalizada completa de tempo de solicitação[#](#send-a-complete-custom-request-time-policy)



Use `licensePolicy` quando um modelo nomeado não expressar sua regra de negócios. Não envie `licensePolicyTemplate` na mesma solicitação.



```
{
  "policy_version": 2,
  "playback_policy": {
    "persistent": false,
    "license_duration": 14400,
    "rental_duration": 0,
    "playback_duration": 7200,
    "renewal_duration": 300,
    "allowed_track_types": "ALL",
    "max_stream_per_user": 2
  },
  "security_policy": [{
    "track_type": "ALL",
    "widevine": {
      "security_level": 1,
      "required_hdcp_version": "HDCP_V1",
      "disable_analog_output": true
    },
    "playready": {
      "security_level": 2000,
      "digital_video_protection_level": 250,
      "analog_video_protection_level": 150,
      "digital_audio_protection_level": 100
    },
    "fairplay": {
      "hdcp_enforcement": 0,
      "allow_airplay": true,
      "allow_av_adapter": false
    },
    "wiseplay": {
      "security_level": 1,
      "output_control": 1
    }
  }]
}
```



### Regras que falham encerradas


- Política JSON é limitada a 16 KiB, deve usar `policy_version: 2`, e pode conter no máximo sete regras de faixa exclusivas. 
- O conteúdo de uma única chave requer uma regra `ALL`, `allowed_track_types: ALL` e um limite máximo de qualidade automático. 
- Regras multi-chaves podem atingir `AUDIO`, `SD`, `HD`, `UHD1`, ou `UHD2`. As camadas omitidas não recebem nenhuma chave. 
- `max_stream_per_user: 0` desabilita DRM-X limite de fluxo simultâneo para esse token. 
- `expiresInSeconds` é DRM License Token validade (60–7200 segundos). É separado de DRM licença e duração de reprodução. 



**A personalização pertence ao seu servidor**Mapa de planos de assinatura confiáveis, janelas de aluguel, classificações de conteúdo ou classes de dispositivos para objetos de política aprovados. Nunca envie uma política recebida do navegador ou entrada móvel.

<!-- Canonical: https://docs.drm-x.com/pt/license-service/policies -->
<!-- Language: pt -->
