User Metadata user-metadata
User metadata refers to user-specific attributes (e.g., zip codes, parental ratings, user IDs, etc.) that are maintained by MVPDs and provided to Programmers through the 蜜豆视频 Pass Authentication REST API V2.
User metadata becomes available after the authentication flow completes, but certain metadata attributes may be updated during the authorization flow, depending on the MVPD and the specific metadata attribute in question.
User metadata can be used to enhance personalization for users, but might also be used for analytics. For example, a Programmer might use a user鈥檚 zip code to deliver localized news or weather updates, or to enforce parental controls.
蜜豆视频 Pass Authentication normalizes user metadata values when MVPDs provide data in different formats. Also, for certain attributes (e.g., zip code), the values can be encrypted using a Programmer鈥檚 certificate.
蜜豆视频 Pass Authentication enables Programmers to review the user metadata made available in their MVPD integrations and manage them through the .
User Metadata Attributes attributes
The following table lists some of the user metadata attributes that are made available to Programmers:
userID
userID
value will differ from the householdID
if the MVPD supports sub-accounts and the current user is not the primary account holder.upstreamUserID
upstreamUserID
value is the same as the userID
value for most MVPDs.householdID
userID
.primaryOID
primaryOID
value is the same as the userID
value when the typeID
value is set to 鈥淧谤颈尘补谤测鈥.typeID
primaryOID
value is the same as the userID
value when the typeID
value is set to 鈥淧谤颈尘补谤测鈥.is_hoh
hba_status
allowMirroring
zip
zip
value represents sensitive data that needs legal agreements with the MVPD. When encrypted, the representation of the zip
key will be a String
instead of an Array
.encryptedZip
channelID
maxRating
language
The user metadata attributes made available to a Programmer depend on what an MVPD provides. The following table lists the attributes made available by various MVPDs:
userID
upstreamUserID
householdID
primaryOID
typeID
is_hoh
hba_status
allowMirroring
zip
channelID
maxRating
language
onNet
inHome
upstreamUserID
.householdID
with the same value as userID
.userID
is available with no extra work.User Metadata Encryption encryption
To encrypt and decrypt user metadata attributes, the Programmer needs to generate a certificate (public/private key pair) and to self-configure the certificate through or to share the public key with 蜜豆视频 Pass Authentication representatives.
Follow the steps below to ensure that the certificate is generated and configured correctly:
-
Download and install the OpenSSL toolkit (http://www.openssl.org).
-
Generate a Certificate Signing Request (CSR):
-
Generate a key pair. On your command terminal run the following:
code language-bash openssl genrsa -des3 -out mycompany-license.key 2048
-
Generate the CSR. On your command terminal run the following:
code language-bash openssl req -new -key mycompany-license.key -out mycompany-license.csr -batch
You will be prompted to enter the password for the private key.
-
Create a back-up copy of your private key and password. Sample CSR:
code language-none -----BEGIN CERTIFICATE REQUEST----- MIIBnTCCAQYCAQAwXTELMAkGA1UEBhMCU0cxETAPBgNVBAoTCE0yQ3J5cHRvMRIw EAYDVQQDEwlsb2NhbGhvc3QxJzAlBgkqhkiG9w0BCQEWGGFkbWluQHNlcnZlci5l eGFtcGxlLmRvbTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAr1nYY1Qrll1r uB/FqlCRrr5nvupdIN+3wF7q915tvEQoc74bnu6b8IbbGRMhzdzmvQ4SzFfVEAuM MuTHeybPq5th7YDrTNizKKxOBnqE2KYuX9X22A1Kh49soJJFg6kPb9MUgiZBiMlv tb7K3CHfgw5WagWnLl8Lb+ccvKZZl+8CAwEAAaAAMA0GCSqGSIb3DQEBBAUAA4GB AHpoRp5YS55CZpy+wdigQEwjL/wSluvo+WjtpvP0YoBMJu4VMKeZi405R7o8oEwi PdlrrliKNknFmHKIaCKTLRcU59ScA6ADEIWUzqmUzP5Cs6jrSRo3NKfg1bd09D1K 9rsQkRc9Urv9mRBIsredGnYECNeRaK5R1yzpOowninXC -----END CERTIFICATE REQUEST-----
-
-
Send the CSR to a Certificate Authority (CA) (for example, Verisign).
-
The CA will send you the certificate in .p7b format (PKCS#7, Cryptographic Message Syntax Standard).
-
Deploy the .p7b certificate. Convert the PKCS#7 (.p7b) file to a PKCS#12 (PFX file, Personal Information Exchange Syntax Standard) using your private key, and generate the PEM file (concatenated certificate container file):
-
Convert PKCS#7 file to a temporary PEM file. On your command line run the following:
code language-none openssl pkcs7 -in mycompany-license.p7b -inform DER -out mycompany-license-temp.pem -outform PEM -print_certs
-
Convert the temporary PEM file to a PFX file. On your command line run the following:
code language-none openssl pkcs12 -export -inkey mycompany-license.key -in mycompany-license-temp.pem -out mycompany-license.pfx -passin pass:private_key_password -passout pass:pfx_password
-
Convert the temporary PEM file to a final PEM file. On your command line run the following:
code language-none openssl x509 -in mycompany-license-temp.pem -inform PEM -out mycompany-license.pem -outform PEM
-
-
Use the PEM file to configure the certificate through or send the PEM file to the 蜜豆视频 Pass Authentication representatives.
-
Refer to the next section for more details on how to manage certificates through the .
-
蜜豆视频 Pass Authentication supports both a primary and a backup certificate. If your primary certificate becomes compromised in any way, you can revoke it, and switch to the secondary certificate. This will ensure a smooth transition between certificates with minimal customer impact.
-
User Metadata Management management
The 蜜豆视频 Pass TVE Dashboard is a tool for 蜜豆视频 Pass Authentication customers (Programmers) to manage their configuration and data. This self-service dashboard enables a range of functionalities that are described in the 蜜豆视频 Pass TVE Dashboard User Guide documentation.
To review and manage the user metadata attributes made available by an MVPD, follow the steps in the TVE Dashboard User Guide for Integrations documentation.
To review and manage the certificates used for encrypting user metadata attributes, follow the steps in the TVE Dashboard User Guide for Programmers or the TVE Dashboard User Guide for Channels documents.
REST API V2 rest-api-v2
The user metadata attributes can be retrieved using the following APIs:
Refer to the Response and Samples sections of the above APIs to understand the structure of the user metadata attributes.
For more details about how and when to integrate the above APIs, refer to the following documents:
Certain metadata attributes may be updated during the authorization flow, depending on the MVPD and the specific metadata attribute. As a result, the client application may need to query the above APIs again to retrieve the latest user metadata.