拒绝访问 Django 应用程序中的 windows 证书存储

Access denied to windows certificate store in django application

我到处搜索,但似乎这只是我的问题或其他人使用我不想要的旁路。 所以我被拒绝访问 windows 证书存储。当我从 python cmd 访问时,一切正常。我在 IIS 中的站点设置了管理员凭据,应用程序目录也具有管理员权限。 堆栈上有类似的问题,我已经调查过了,但我的情况似乎有所不同,出于明显的原因,我不想使用未经验证的上下文。

我卡住了,不明白发生了什么。有帮助吗?

(Windows 服务器 2012 r2,django 1.8,python 2.7.9,IIS 8.5)

conn = httplib.HTTPSConnection(PAYPAL_LIVE_HOST, context=ssl._create_default_https_context())

    Traceback (most recent call last):
  File "c:\Python27\lib\site-packages\django\core\handlers\base.py", line 132, in get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "c:\Python27\lib\site-packages\django\contrib\auth\decorators.py", line 22, in _wrapped_view
    return view_func(request, *args, **kwargs)
  File "C:\inetpub\vhosts\sgtmarkets.com\rails\SGTMarketsBO\website\views\finance\deposit.py", line 77, in paypal
    conn = httplib.HTTPSConnection(PAYPAL_LIVE_HOST, context=ssl._create_default_https_context())
  File "c:\Python27\lib\ssl.py", line 427, in create_default_context
    context.load_default_certs(purpose)
  File "c:\Python27\lib\ssl.py", line 378, in load_default_certs
    self._load_windows_store_certs(storename, purpose)
  File "c:\Python27\lib\ssl.py", line 365, in _load_windows_store_certs
    for cert, encoding, trust in enum_certificates(storename):
WindowsError: [Error 5] Access is denied

我知道这是一个旧的 post,但我能够通过转到 IIS 中的应用程序池解决这个问题,选择我的 Django 应用程序所在的应用程序池 运行,然后转到高级设置,点击ApplicationPoolIdentity旁边的三点按钮(至少这是我默认的内置账户),然后将其更改为NetworkService账户。

我遇到了同样的问题,用 'request' 模块解决了 'httplib'