Article ID: 114567, created on Aug 24, 2012, last review on May 11, 2014

  • Applies to:
  • Sitebuilder 4.5 for Windows

症状

ImageGallery またはその他のモジュールページを Sitebuilder ウィザードで開けません。Sitebuilder ウィザードに以下のエラーが表示されます。

--->8---
Internal System error. Please contact administrator if the problem persists
---8<---


Application.log に以下のエラーが表示されます。

<SITEBUILDER ROOT>\_logs\Application.log
---8<---
 Exception message: raw###System.Security.SecurityException
Request for the permission of type 'System.Data.OleDb.OleDbPermission, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.
   at System.Security.CodeAccessSecurityEngine.Check(Object demand, StackCrawlMark& stackMark, Boolean isPermSet)
   at System.Security.PermissionSet.Demand()
   at System.Data.Common.DbConnectionOptions.DemandPermission()
   at System.Data.OleDb.OleDbConnection.PermissionDemand()
   at System.Data.OleDb.OleDbConnectionFactory.PermissionDemand(DbConnection outerConnection)
   at System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
   at System.Data.OleDb.OleDbConnection.Open()
   at SWsoft.SiteBuilder.Modules.Storage.Connector.Connectivity.DatabaseConnector.GetConnection()
   at SWsoft.SiteBuilder.Modules.Storage.Connector.LocalDataFacade.FillData(IList`1 executeBefore, DataSet emptyData, IList`1 queries, IList`1 executeAfter)
   at SWsoft.SiteBuilder.Modules.Storage.Connector.WebServices.DataFacadeService.<>c__DisplayClassa.<FillData>b__9()
   at SWsoft.SiteBuilder.Modules.Storage.Connector.WebServices.Services.Invoke[T](ObjectMethodInvoker fun, SiteIdHeader siteId)
--->8---


また、以下のエラーが発生し、サイトを公開できません。

---8<---
Code access security permissions(s) denied on the publishing location. OleDbPermission(Unrestricted)
--->8---


また、公開されたサイトが機能しません。 ImageGallery ページにエラーが表示されます。

原因

パブリッシングホストに OleDbPermission がありません。

解決策

パブリッシングサーバは、Medium Trust(信頼度 中)モード以上で機能します。 サーバが Medium Trust モードで機能する場合、このサーバが Microsoft Access データベースにアクセスするためには OleDbPermission が付与されている必要があり、一部のモジュールが正しく機能するためには WebPermission が付与されている必要があります。

1. IIS で、公開されたサイトが ASP.NET 2.0.50727 を使用していることを確認します。

2. 公開サイトで使用されている信頼レベルを確認します。 サイトを開き、ImageGallery ページに移動します。 Event Log で信頼レベルを確認します。 例:

--->8---
Trust level: Medium
---8<---


または

--->8---
Trust level: High
---8<---


3. web.config で信頼レベルモードの構成を確認します。

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG\web.config
--->8---
<system.web>
 <securityPolicy>
     <trustLevel name="High" policyFile="web_hightrust.config" />         
     <trustLevel name="Medium" policyFile="web_mediumtrust.config" />  
    
...
---8<---


4. C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG\ ディレクトリで web_mediumtrust.config または web_hightrust.config を変更します(サーバで使用している信頼レベルに応じて異なります)。 ハイライトされたレコードを追加します。

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG\web_mediumtrust.config(web_hightrust.config)
--->8---
<SecurityClasses>
      <SecurityClass Name="OleDbPermission" Description="System.Data.OleDb.OleDbPermission, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
...
<PermissionSet class="NamedPermissionSet" ...>
      <IPermission class="OleDbPermission" version="1" Unrestricted="true" />
      <IPermission class="WebPermission" version="1" Unrestricted="true" />

...
---8<---


5. "iisreset" で IIS を再起動します。

詳細は、『Parallels Sitebuilder 4.5 for Windows Site Owner's Guide』の「Requirements to Publishing Location(37 ページ)を参照してください。

4d336e73be6d8fa81454b57cedf8e2bb 56797cefb1efc9130f7c48a7d1db0f0c fad6dc0c8e983c17ae70a51ac7952cd0 2a62cbceb986d1b8f45bcd3ff4cb29a5 45e8c8798afdb3e279a2f84bd498d19e

Email subscription for changes to this article