2012-03-05 2 views
1

У меня возникли проблемы с разрешениями IIS и сборкой Microsoft Outlook 2010 interop с использованием проекта веб-форм.Разрешение доступа к Outlook Interop в проекте веб-форм

Я создал доказательство концептуального проекта, чтобы убедиться, что я могу использовать сборку Microsoft для взаимодействия с Outlook в конкретной ситуации, в которой мне поручено. Демо-проект работал отлично, и у меня не было проблем. Теперь я пытаюсь интегрировать его в наш основной проект, и я столкнулся с проблемой разрешения IIS. У меня есть мой веб-сайт, работающий в IIS 7 локально. В диспетчере IIS я нажимаю «Пулы приложений» -> «Мой веб-сайт -> Дополнительные настройки». В этом окне у меня есть пользовательский идентификатор под названием «fileshare» с паролем («fileshare» был создан для обеспечения доступа к изображениям веб-сайта, файлам PDF и т. Д. На сетевом сервере разработки). Я скопировал сборку interlook interlook в нашу общую папку общих сборок вместо ссылки на нее из GAC. Я дал сборке все разрешения для IUSER, NETWORK SERVICE, IIS_WPG, ASP.NET и файлов. Я получаю следующее сообщение об ошибке RUN- время:

Retrieving the COM class factory for component with CLSID {0006F03A-0000-0000- 
C000-000000000046} failed due to the following error: 80070005 Access is denied. 
(Exception from HRESULT: 0x80070005 (E_ACCESSDENIED)). Description: An unhandled 
exception occurred during the execution of the current web request. Please 
review the stack trace for more information about the error and where it 
originated in the code. 

Exception Details: System.UnauthorizedAccessException: Retrieving the COM class 
factory for component with CLSID {0006F03A-0000-0000- C000-000000000046} failed 
due to the following error: 80070005 Access is denied. (Exception from HRESULT: 
0x80070005 (E_ACCESSDENIED)). 

ASP.NET is not authorized to access the requested resource. Consider granting 
access rights to the resource to the ASP.NET request identity. ASP.NET has a 
base process identity (typically {MACHINE}\ASPNET on IIS 5 or Network Service on 
IIS 6 and IIS 7, and the configured application pool identity on IIS 7.5) that 
is used if the application is not impersonating. If the application is 
impersonating via <identity impersonate="true"/>, the identity will be the 
anonymous user (typically IUSR_MACHINENAME) or the authenticated request user. 

To grant ASP.NET access to a file, right-click the file in Explorer, choose 
"Properties" and select the Security tab. Click "Add" to add the appropriate 
user or group. Highlight the ASP.NET account, and check the boxes for the 
desired access. 

Я проверил журналы событий Windows и под Windows, журналы -> Система и у меня есть эта ошибка:

The machine-default permission settings do not grant Local Activation permission 
for the COM Server application with CLSID {0006F03A-0000-0000- 
C000-000000000046} and APPID Unavailable to the user BSoup\fileshare SID 
(S-1-5-21-2999627215-1482540357-33300828-1019) from address LocalHost (Using 
LRPC). This security permission can be modified using the Component Services 
administrative tool. 
+0

Вы не должны ... Outlook не поддерживается для работы в среде сервера - подробности здесь http://msdn.microsoft.com/en-us/library/gg608200.aspx. –

ответ

0

После этого немного больше исследований, я «Я решил, что использование сборной команды - плохой выбор. Как заявила Алекси, это не для использования по сети.

0
  • Запустить службы IIS.
  • Щелкните правой кнопкой мыши виртуальный каталог приложения и выберите команду Свойства.
  • Перейдите на вкладку Безопасность каталога. В разделе Анонимный контроль доступа и проверки подлинности нажмите «Изменить».
  • Убедитесь, что установлен флажок «Анонимный доступ», и установлен флажок «Встроенная проверка подлинности Windows».
  • Настройка ASP.NET для использования проверки подлинности Windows с олицетворением, используйте следующую конфигурацию в WebConfig.

    <system.web> 
        <authentication mode="Windows"/> 
        <identity impersonate="true"/> 
    </system.web> 
    
Смежные вопросы