Postupy: Povolení spolupráce s cloudovou službou RMS pro aplikaci službyHow-to: enable your service application to work with cloud based RMS

Toto téma popisuje kroky nastavení aplikace služby na používání Azure Rights Management.This topic outlines steps for setting up your service application to use Azure Rights Management. Další informace najdete v tématu Začínáme se službou Azure Rights Management.For more information, see Getting started with Azure Rights Management.

DůležitéImportant
Pokud chcete aplikaci služby Rights Management Services SDK 2.1 použít s Azure RMS, musíte si vytvořit vlastní tenanty.In order to use your Rights Management Services SDK 2.1 service application with Azure RMS, you'll need to create your own tenants. Další informace najdete v tématu Požadavky pro Azure RMS: Cloudová předplatná, která podporují Azure RMS.For more information, see Azure RMS requirements: Cloud subscriptions that support Azure RMS

PožadavkyPrerequisites

Připojení ke službě Azure Rights ManagementConnecting to the Azure Rights Management Service

Poznámka: Další informace najdete v tématu Nastavení režimu zabezpečení rozhraní APINote For more information, see Setting the API security mode

  • Následující postup popisuje kroky vytvoření instance struktury IPC_PROMPT_CTX s členem pcCredential (IPC_CREDENTIAL) naplněným informacemi o připojení ze služby Azure Rights Management.The following steps are the setup for creating an instance of an IPC_PROMPT_CTX structure with the pcCredential (IPC_CREDENTIAL) member populated with connection information from the Azure Rights Management Service.
  • Informace z vytvoření identity služby symetrického klíče (viz požadavky na začátku tohoto tématu) použijte k nastavení parametrů wszServicePrincipal, wszBposTenantId a cbKey při vytvoření instance struktury IPC_CREDENTIAL_SYMMETRIC_KEY.Use the information from your symmetric key service identity creation (see the prerequisites listed earlier in this topic) to set the wszServicePrincipal, wszBposTenantId, and cbKey parameters when you create an instance of an IPC_CREDENTIAL_SYMMETRIC_KEY structure.

Poznámka: Kvůli existující podmínce v naší službě zjišťování platí, že když nejste v Severní Americe, pověření symetrického klíče z jiných oblastí se nepřijmou. Proto je nutné zadat adresy URL tenanta přímo.Note - Due to an existing condition with our discovery service, if you are not in North America, symmetric key credentials are not accepted from other regions therefore, you must specify your tenant URLs directly. K tomu slouží parametr pConnectionInfo. Zadejte IPC_CONNECTION_INFO u funkce IpcGetTemplateList nebo IpcGetTemplateIssuerList.This is done through the pConnectionInfo parameter, type IPC_CONNECTION_INFO, on functions IpcGetTemplateList or IpcGetTemplateIssuerList.

Generování symetrického klíče a shromáždění potřebných informacíGenerate a symmetric key and collect the needed information

Pokyny ke generování symetrického klíčeInstructions to generate a symmetric key

Poznámka: Abyste mohli používat rutiny Powershellu, musíte být správce tenanta.Note - You must be a tenant administrator to use the Powershell cmdlets.

  • Spusťte prostředí Powershell a spusťte následující příkazy ke generování klíčeStart Powershell and run the following commands to generate a key

    Import-Module MSOnline

    Connect-MsolService (zadejte svoje přihlašovací údaje správce)Connect-MsolService (type-in your admin credentials)

    New-MsolServicePrincipal (zadejte zobrazovaný název)New-MsolServicePrincipal (type-in a display name)

  • Po vygenerování symetrického klíče se zobrazí výstup s informacemi o klíči včetně vlastního klíče a vlastnosti AppPrincipalId.After it generates a symmetric key, it will output information about the key including the key itself and an AppPrincipalId.

    The following symmetric key was created as one was not supplied
    ZYbF/lTtwE28qplQofCpi2syWd11D83+A3DRlb2Jnv8=
    
    DisplayName : RMSTestApp
    ServicePrincipalNames : {7d9c1f38-600c-4b4d-8249-22427f016963}
    ObjectId : 0ee53770-ec86-409e-8939-6d8239880518
    AppPrincipalId : 7d9c1f38-600c-4b4d-8249-22427f016963
    

Pokyny k vyhledání TenantBposId a UrlsInstructions to find out TenantBposId and Urls

  • Nainstalujte modul prostředí PowerShell pro službu RMS.Install Azure RMS powershell module.
  • Spusťte prostředí Powershell a spusťte následující příkazy k získání konfigurace služby RMS klienta.Start Powershell and run the following commands to get the RMS configuration of the tenant.

    Import-Module aadrm

    Connect-AadrmService (zadejte svoje přihlašovací údaje správce)Connect-AadrmService (type-in your admin credentials)

    Get-AadrmConfiguration

  • Vytvořte instanci IPC_CREDENTIAL_SYMMETRIC_KEY a nastavte několik členů.Create an instance of an IPC_CREDENTIAL_SYMMETRIC_KEY and set a few members.

    // Create a key structure.
    IPC_CREDENTIAL_SYMMETRIC_KEY symKey = {0};
    
    // Set each member with information from service creation.
    symKey.wszBase64Key = "your service principal key";
    symKey.wszAppPrincipalId = "your app principal identifier";
    symKey.wszBposTenantId = "your tenant identifier";
    

Další informace najdete v tématu IPC_CREDENTIAL_SYMMETRIC_KEY.For more information see, IPC_CREDENTIAL_SYMMETRIC_KEY.

Poznámka: Členové connectionInfo se nastavují s adresami URL z předchozího volání Get-AadrmConfiguration a jsou tady uvedení s těmito názvy polí.Note - The connectionInfo members are set with URLs from the previous call to Get-AadrmConfiguration and noted here with those field names.

// Create a credential structure.
IPC_CREDENTIAL cred = {0};

IPC_CONNECTION_INFO connectionInfo = {0};
connectionInfo.wszIntranetUrl = LicensingIntranetDistributionPointUrl;
connectionInfo.wszExtranetUrl = LicensingExtranetDistributionPointUrl;

// Set each member.
cred.dwType = IPC_CREDENTIAL_TYPE_SYMMETRIC_KEY;
cred.pcCertContext = (PCCERT_CONTEXT)&symKey;

// Create your prompt control.
IPC_PROMPT_CTX promptCtx = {0};

// Set each member.
promptCtx.cbSize = sizeof(IPC_PROMPT_CTX);
promptCtx.hwndParent = NULL;
promptCtx.dwflags = IPC_PROMPT_FLAG_SILENT;
promptCtx.hCancelEvent = NULL;
promptCtx.pcCredential = &cred;

Určení a zašifrování šablonyIdentify a template and then encrypt

<span data-ttu-id="20c83-141">PCIPC_TIL pTemplates = NULL; IPC_TEMPLATE_ISSUER templateIssuer = (pTemplateIssuerList->aTi)[0];</span><span class="sxs-lookup"><span data-stu-id="20c83-141">PCIPC_TIL pTemplates = NULL; IPC_TEMPLATE_ISSUER templateIssuer = (pTemplateIssuerList->aTi)[0];</span></span>

<span data-ttu-id="20c83-142">hr = IpcGetTemplateList(&(templateIssuer.connectionInfo),        IPC_GTL_FLAG_FORCE_DOWNLOAD,        0,        &promptCtx,        NULL,        &pTemplates);</span><span class="sxs-lookup"><span data-stu-id="20c83-142">hr = IpcGetTemplateList(&(templateIssuer.connectionInfo),        IPC_GTL_FLAG_FORCE_DOWNLOAD,        0,        &promptCtx,        NULL,        &pTemplates);</span></span>

Příklad použití IpcfEncryptFile:Example use of IpcfEncrcyptFile:

LPCWSTR wszContentTemplateId = pTemplates->aTi[0].wszID;
hr = IpcfEncryptFile(wszInputFilePath,
       wszContentTemplateId,
       IPCF_EF_TEMPLATE_ID,
       IPC_EF_FLAG_KEY_NO_PERSIST,
       &promptCtx,
       NULL,
       &wszOutputFilePath);

Příklad použití IpcfDecryptFile:Example use of IpcfDecryptFile:

hr = IpcfDecryptFile(wszInputFilePath,
       IPCF_DF_FLAG_DEFAULT,
       &promptCtx,
       NULL,
       &wszOutputFilePath);

Teď jste dokončili postup potřebný k aktivaci aplikace na používání služby Azure Rights Management.You have now completed the steps needed to enable your application to use Azure Rights Management.

KomentářeComments

Před přidáním komentáře se podívejte na naše pravidla organizace.Before commenting, we ask that you review our House rules.