Active Directory Rights Management System SDK

1

I developed a DLL works as proxy between RMS Server and whom ever he wants to utilize its services programatically , The DLL works pretty fine, but the problem arises when i want to use this DLL in .Net web service it gives me an error in DRMInitEnvironment and the error code is 0x8004930c which has something to do with Manifest violation error.

The manifist configuration is like below

AUTO-GUID

C:\\Program Files\\Microsoft SDKs\\Windows\\v7.1\\Bin
\\isvtier5appsigningprivkey.dat

MODULELIST REQ HASH

C:\\Users\\administrator\\Documents\\Visual Studio 2008\\Projects
\\TestWBS\\TestWBS\\bin\\TestWBS.dll

OPT NOHASH

C:\\Users\\administrator\\Documents\\Visual Studio 2008\\Projects\\TestWBS
\\TestWBS\\bin\\RMSPROXY.dll

REQ NOHASH

%SYSTEMROOT%\\system32\\msdrm.dll

POLICYLIST INCLUSION PUBLICKEY

C:\\Program Files\\Microsoft SDKs\\Windows\\v7.1\\Bin
\\isvtier5appsigningpubkey.dat

EXCLUSION

Notes

  1. TestWBS.dll is the web-services generated DLL
  2. RMSPROXY.dll is the DLL which has been developed to work as proxy
  3. im passing the manifest file to RMSPROXY as base64 encoded string
  4. I created C# console application to consume the DLL and it works pretty fine and the C# application manifest looks like the following

AUTO-GUID

C:\\Program Files\\Microsoft SDKs\\Windows\\v7.1\\Bin
\\isvtier5appsigningprivkey.dat

MODULELIST REQ HASH

C:\\Users\\administrator\\Documents\\Visual Studio 2008\\Projects
\\testLibcClient\\testLibcClient\\bin\\Debug\\testLibcClient.exe

REQ NOHASH %SYSTEMROOT%\\system32\\msdrm.dll

POLICYLIST INCLUSION PUBLICKEY

C:\\Program Files\\Microsoft SDKs\\Windows\\v7.1\\Bin
\\isvtier5appsigningpubkey.dat

EXCLUSION

I know that the problem is in the manifest but I don't know what and where.

c#
.net
web-services
sdk
rms
asked on Stack Overflow Nov 15, 2012 by Saddam Abu Ghaida • edited Feb 15, 2014 by Saddam Abu Ghaida

1 Answer

-1

I discovered the solution,

  1. i needed to create a manifest for w3wp.exe and sign it which represents the IIS worker
  2. change the app pool identity in IIS to the super user which will act as DR for all the protected documents
  3. enable IIS Impersonation and assign the same identity as the one before
answered on Stack Overflow Feb 15, 2014 by Saddam Abu Ghaida

User contributions licensed under CC BY-SA 3.0