2013-04-21 4 views
1

SQLServer (MSSQLBlogProvider)를 사용하여 기본 웹 사이트의 가상 디렉터리에 응용 프로그램 (BlogEngine)을 설치합니다. BlogEngine에는 자체 데이터베이스가 있습니다.EXECUTE 권한이 거부되었습니다. - 'aspnet_Roles_RoleExists'

모두 효과가 있습니다. 즉, SQL 데이터베이스에서 제공되는 기본 페이지가 있습니다.

그런 다음 ASP.net 웹 사이트 관리 도구 \ 보안을 사용하여 사용자를 만들었습니다 (예 : http://www.nyveldt.com/misc/BE13SQLMembership.html : 7 분 표시). 매우 잘 설명되어 있으며 주위를 클릭하면 무엇을하는지 쉽고 빠르게 볼 수 있습니다.

실행 권한은 개체 'aspnet_Roles_RoleExists', 데이터베이스 '블로그', 스키마 'dbo가'에 거부 : 이러한 단계를 수행 한 후 비디오)

의 타임 라인은 내가 오류가 발생합니다. 나는 접근 규칙으로 놀았지만 성공하지 못했습니다.

"통합 보안"을 사용하고 있습니다.

나는보기 좋게 보이고 수정할 곳이 없다. 어떤 도움이라도 대단히 감사합니다.

스택 추적 :

[SqlException (0x80131904): The EXECUTE permission was denied on the object 'aspnet_Roles_RoleExists', database 'Blog', schema 'dbo'.] 
    System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) +388 
    System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) +688 
    System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) +4403 
    System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString) +6665097 
    System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite) +6667096 
    System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean asyncWrite) +577 
    System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean asyncWrite) +735 
    System.Data.SqlClient.SqlCommand.ExecuteNonQuery() +290 
    System.Web.Security.SqlRoleProvider.RoleExists(String roleName) +967 
    System.Web.Security.Roles.RoleExists(String roleName) +336 
    BlogEngine.Core.Right.InitRightForBlogInstance() in j:\Projects\BlogEngine_2_7_0_0\blogengine_4f5eed923a57\BlogEngine\BlogEngine.Core\Security\Right.cs:612 
    BlogEngine.Core.Right.get_RightsByRole() in j:\Projects\BlogEngine_2_7_0_0\blogengine_4f5eed923a57\BlogEngine\BlogEngine.Core\Security\Right.cs:600 
    BlogEngine.Core.Right.EnsureBlogInstanceDataLoaded() in j:\Projects\BlogEngine_2_7_0_0\blogengine_4f5eed923a57\BlogEngine\BlogEngine.Core\Security\Right.cs:566 
    BlogEngine.Core.Right..cctor() in j:\Projects\BlogEngine_2_7_0_0\blogengine_4f5eed923a57\BlogEngine\BlogEngine.Core\Security\Right.cs:113 

[TypeInitializationException: The type initializer for 'BlogEngine.Core.Right' threw an exception.] 
    BlogEngine.Core.Right..ctor() in j:\Projects\BlogEngine_2_7_0_0\blogengine_4f5eed923a57\BlogEngine\BlogEngine.Core\Security\Right.cs:539 

[TargetInvocationException: Exception has been thrown by the target of an invocation.] 
    System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandleInternal& ctor, Boolean& bNeedSecurityCheck) +0 
    System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark) +159 
    System.RuntimeType.CreateInstanceDefaultCtor(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark) +256 
    System.Activator.CreateInstance(Type type, Boolean nonPublic) +127 
    System.RuntimeType.CreateInstanceImpl(BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, StackCrawlMark& stackMark) +14376269 
    System.Activator.CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes) +200 
    System.Activator.CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture) +28 
    System.Web.HttpRuntime.CreateNonPublicInstance(Type type, Object[] args) +83 
    System.Web.HttpApplication.BuildIntegratedModuleCollection(List`1 moduleList) +335 
    System.Web.HttpApplication.GetModuleCollection(IntPtr appContext) +1262 
    System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS(IntPtr appContext, HttpContext context, MethodInfo[] handlers) +133 
    System.Web.HttpApplication.InitSpecial(HttpApplicationState state, MethodInfo[] handlers, IntPtr appContext, HttpContext context) +304 
    System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr appContext, HttpContext context) +404 
    System.Web.Hosting.PipelineRuntime.InitializeApplication(IntPtr appContext) +475 

[HttpException (0x80004005): Exception has been thrown by the target of an invocation.] 
    System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +12881540 
    System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +159 
    System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +12722601 
+0


당신의 웹 사이트에 귀하의 응용 프로그램 풀
찾아보기를 재활용 IIS 관리자로 이동 : http://blog.dampee.be/post/2009/04/07/통합 보안 - 사용자에게 사용 권한을 추가 할 수 있습니까? – graph

답변

2

를 열고 인터넷 정보 서비스 관리자
응용 프로그램 풀 귀하의 IIS 웹 사이트가 귀하의 응용 프로그램 풀은

에서 실행되는 어떤 정체성 응용 프로그램 풀

이동을 사용하는 것을 확인

SQL Server 관리 Studio 열기
SQL 서버 인스턴스에 연결
열기 데이터베이스
실행이 스크립트의 새 쿼리 :
GRANT SELECT는, EXECUTE, UPDATE,
[NT AUTHORITY \ NETWORK SERVICE]

* 교체 [NT AUTHORITY에게 SCHEMA :: DBO에 대한 INSERT \ NETWORK SERVICE]를 실행하십시오.


여기 가능성이 힌트를 발견

+1

오류가 발생했습니다 : 'myIdentity'사용자가 존재하지 않거나 권한이 없기 때문에 'myIdentity'사용자를 찾을 수 없습니다. – JoeManiaci

+0

@Duke Hall : 감사합니다. 내 문제가 해결되었습니다 :) – Farzaneh

관련 문제