Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Overview of the Active Directory Rights Management Services SDK technology.
To develop Active Directory Rights Management Services SDK, you need these headers:
For programming guidance for this technology, see:
Enumerations
DRM_DISTRIBUTION_POINT_INFO Specifies the type of distribution point to retrieve information about when calling DRMGetIssuanceLicenseInfo. |
DRM_STATUS_MSG Used by the custom callback function to specify why the callback function is being called. |
DRM_USAGEPOLICY_TYPE Used with the DRMGetUsagePolicy and DRMSetUsagePolicy functions to specify a type of usage policy. |
DRMATTESTTYPE The DRMATTESTTYPE enumeration specifies what kind of signature to create for a data blob. |
DRMENCODINGTYPE The DRMENCODINGTYPE enumeration identifies possible encoding types used in licenses. |
DRMGLOBALOPTIONS Defines values for specifying which protocol is used for the transport protocol and whether the server lockbox is used. This enumeration is used by the DRMSetGlobalOptions function. |
DRMSECURITYPROVIDERTYPE The DRMSECURITYPROVIDERTYPE enumeration specifies the type of secure DRM environment used. |
DRMSPECTYPE The DRMSPECTYPE enumeration indicates what type of security or library providers are used. |
DRMTIMETYPE The DRMTIMETYPE enumeration specifies a time type. |
Functions
DRMAcquireAdvisories Retrieves revocation lists required by a submitted license. |
DRMAcquireIssuanceLicenseTemplate Asynchronously retrieves issuance license templates from a server. |
DRMAcquireLicense Attempts to acquire an end-user license or client licensor certificate asynchronously. |
DRMActivate Obtains a lockbox and machine certificate for a machine or a rights account certificate for a user. |
DRMAddLicense Adds an end-user license to the temporary or permanent license store. |
DRMAddRightWithUser Assigns a right to a user in an issuance license. |
DRMAttest The DRMAttest function is no longer supported and returns E_NOTIMPL. |
DRMCALLBACK Some of the functions included in the AD RMS SDK provide status information and licenses to your application by using a callback function that you must implement. The callback syntax is shown below. |
DRMCheckSecurity Returns S_OK for any level of the security check being run. |
DRMClearAllRights Removes all rights from an existing issuance license. |
DRMCloseEnvironmentHandle Closes an environment handle. |
DRMCloseHandle Closes handles to objects created with DRMCreate* functions and libraries loaded by using DRMLoadLibrary. |
DRMClosePubHandle Closes a previously created DRMPUBHANDLE. |
DRMCloseQueryHandle Closes a handle to an unbound license object. |
DRMCloseSession Closes a client session or a license storage session. |
DRMConstructCertificateChain Builds a certificate chain from an arbitrary number of certificates. |
DRMCreateBoundLicense Allows an application to examine or exercise the rights on a locally stored license. |
DRMCreateClientSession Creates a client session, which hosts license storage sessions and is used in activation and other function calls. |
DRMCreateEnablingBitsDecryptor Creates a decryption object that is used to decrypt content data. |
DRMCreateEnablingBitsEncryptor Creates an AD RMS encrypting object that is used to encrypt content data. |
DRMCreateEnablingPrincipal Creates an enabling principal needed to bind to a license. |
DRMCreateIssuanceLicense Creates an issuance license from scratch, from a template, or from a signed issuance license. |
DRMCreateLicenseStorageSession Creates a license storage session, which is needed to acquire or manipulate a license. |
DRMCreateRight Creates an XrML right that will define a right granted to a user or group. |
DRMCreateUser Creates a user that will be granted a right. |
DRMDecode Decodes a string encoded with a common algorithm, such as base64. |
DRMDeconstructCertificateChain Retrieves a specified certificate from a certificate chain. |
DRMDecrypt Decrypts encrypted content. |
DRMDeleteLicense Deletes a license, client licensor certificate, revocation list, or issuance license template. |
DRMDuplicateEnvironmentHandle Creates a copy of an environment handle. |
DRMDuplicateHandle Creates a copy of a DRMHANDLE. |
DRMDuplicatePubHandle Makes a copy of a DRMPUBHANDLE. |
DRMDuplicateSession Duplicates a client or license storage session. |
DRMEncode Encodes data using a public encoding method, such as base64. |
DRMEncrypt Encrypts data. |
DRMEnumerateLicense Enumerates valid licenses, machine certificates or rights account certificates, revocation lists for the current user, or issuance license templates. |
DRMGetApplicationSpecificData Retrieves a name-value pair of arbitrary application-specific information. |
DRMGetBoundLicenseAttribute Retrieves a bound license attribute from the license XrML. |
DRMGetBoundLicenseAttributeCount Retrieves the number of occurrences of an attribute in a license. |
DRMGetBoundLicenseObject Returns an object from a bound license. |
DRMGetBoundLicenseObjectCount Retrieves the number of occurrences of an object within a specified branch of a license. |
DRMGetCertificateChainCount Retrieves the number of certificates in a certificate chain. |
DRMGetClientVersion Returns the version number of the Active Directory Rights Management Services client software and whether the hierarchy is for Production or Pre-production purposes. |
DRMGetEnvironmentInfo Returns information about a secure environment. |
DRMGetInfo Retrieves information about encrypting or decrypting objects. |
DRMGetIntervalTime Retrieves the number of days from issuance that can pass before an end�user license must be renewed. |
DRMGetIssuanceLicenseInfo Retrieves various information from an issuance license. |
DRMGetIssuanceLicenseTemplate Obtains an issuance license template from an existing issuance license. |
DRMGetMetaData Retrieves metadata from an issuance license. |
DRMGetNameAndDescription Retrieves a language specific name and description from an issuance license. |
DRMGetOwnerLicense Retrieves an owner license created by calling the DRMGetSignedIssuanceLicense. |
DRMGetProcAddress Returns the address of a function in a library. It is the secure version of the GetProcAddress function. |
DRMGetRevocationPoint Retrieves information about the revocation point for an issuance license. |
DRMGetRightExtendedInfo Retrieves custom name-value pairs attached to a right. |
DRMGetRightInfo Obtains information about a previously created right. |
DRMGetSecurityProvider Retrieves the path to a lockbox. |
DRMGetServiceLocation Retrieves the URL of a server that can perform various rights management services, such as activation or license acquisition. |
DRMGetSignedIssuanceLicense Acquires a signed issuance license online or offline, or produces an unsigned issuance license that can be signed later. |
DRMGetSignedIssuanceLicenseEx Acquires a signed issuance license offline. |
DRMGetTime Requests a secure time from the rights management system. |
DRMGetUnboundLicenseAttribute Retrieves an unbound license attribute from the underlying XrML. |
DRMGetUnboundLicenseAttributeCount Retrieves the number of occurrences of an attribute within an object in an unbound license. |
DRMGetUnboundLicenseObject Retrieves an object of a specified type in an unbound license. |
DRMGetUnboundLicenseObjectCount Counts the instances of an object within a specified branch of the license. |
DRMGetUsagePolicy Gets a usage policy that requires, or denies, access to content based on application name, version, or other application characteristics. |
DRMGetUserInfo Obtains information about a user. |
DRMGetUserRights Retrieves user/right pairs from an issuance license. |
DRMGetUsers Retrieves a specific user from an issuance license. |
DRMInitEnvironment Creates a secure environment for all rights management calls. |
DRMIsActivated Indicates whether the current user or machine is activated. |
DRMIsWindowProtected Indicates whether a window is associated with a protected environment. |
DRMLoadLibrary Loads a handle to an approved library, as determined by the credentials. |
DRMParseUnboundLicense Creates a handle to an unbound license, to allow an application to navigate its objects and attributes. |
DRMRegisterContent Informs the Active Directory Rights Management Services (AD RMS) client that an AD RMS-protected document is being or is no longer being displayed. |
DRMRegisterProtectedWindow Registers a window in the protected environment. |
DRMRegisterRevocationList Registers a rights revocation list on the client. |
DRMRepair Repairs a client machine by deleting certificates previously created for the machine or user. |
DRMSetApplicationSpecificData Allows an issuance license to store arbitrary name-value pairs for use by the content-consuming application. |
DRMSetGlobalOptions Sets the transport protocol to a specified value and optionally specifies whether the server lockbox is used. |
DRMSetIntervalTime Specifies the number of days from issuance that can pass before an end�user license must be renewed. |
DRMSetMetaData Adds application-specific metadata to an issuance license. |
DRMSetNameAndDescription Allows an application to specify names and descriptions of the license in multiple (human) languages. |
DRMSetRevocationPoint Sets a refresh rate and location to obtain a revocation list. |
DRMSetUsagePolicy Sets a usage policy that requires or denies access to content based on application name, version, or other environment characteristics. |
DRMVerify No longer supported and returns E_NOTIMPL. |
Structures
DRM_ACTSERV_INFO The DRM_ACTSERV_INFO structure stores information about the activation server. |
DRM_CLIENT_VERSION_INFO Receives information about the version of the Active Directory Rights Management Services (AD RMS) client and the hierarchy, such as Production or Pre-production. |
DRM_LICENSE_ACQ_DATA Holds license acquisition data during nonsilent license acquisition. |
DRMBOUNDLICENSEPARAMS Used by DRMCreateBoundLicense to bind to a license. |
DRMID Identifies an object. |