Re: Security Exeception during upgrade

From: SteveWestling (SteveWestling_at_discussions.microsoft.com)
Date: 11/20/05

  • Next message: Patrick.O.Ige: "Re: Active Directory vs SqlServer which way to go?"
    Date: Sun, 20 Nov 2005 13:30:02 -0800
    
    

    Thanks for your reply, but I figured it out after doing extensive searches on
    the web.

    FYI. You are absolutely right, it was user permissions. My web application
    writes errors to the event log and the first time I opened it an error
    occured (invalid login). In order for the app to use the event log, I had to
    open the registry with regedit, find the key for Event log and modify the
    permissions. Specifically, I granted the group users Full Control of that
    key. I believe I only need to give Full Control to the user "NETWORK LOGIN"
    but I was so busy trying to complete the rest of the process, I haven't yet
    gone back to revise the setting.

    Thanks again for your help.

    "Nicole Calinoiu" wrote:

    > This particular SecurityException can occur due to a lack of user
    > permissions, not just a lack of CAS permissions. What happens if you
    > attempt to run the first call (which is presumably registering the event
    > source) under an admin account rather than from within your application?
    > Also, what is the name of the event log (not the source, but the log) to
    > which your code is attempting to write?
    >
    >
    > "SteveWestling" <SteveWestling@discussions.microsoft.com> wrote in message
    > news:B0E159B5-D49D-4F8C-944E-38D87AEE1307@microsoft.com...
    > > I'm upgrading from a Framework 1.0.3705 app to a Framework 1.1.4322 app.
    > > When
    > > I try to make my first call, where the system registers my components in
    > > component services. But now I get the following message:
    > >
    > > Server Error in '/theSolver' Application.
    > > Security Exception
    > > Description: The application attempted to perform an operation not allowed
    > > by the security policy. To grant this application the required permission
    > > please contact your system administrator or change the application's trust
    > > level in the configuration file.
    > >
    > > Exception Details: System.Security.SecurityException: Requested registry
    > > access is not allowed.
    > >
    > > Source Error:
    > >
    > > Line 42: UDL = "PS.UDL";
    > > Line 43: }
    > > Line 44: doc.LoadXml(user.VerifyLogin(EmailID, Password, RequesterId,
    > > UDL));
    > > Line 45: node = doc.SelectSingleNode("//system_user");
    > > Line 46: RequesterId =
    > > System.Convert.ToInt32(node.Attributes.GetNamedItem("requester_id").Value);
    > >
    > >
    > > Source File: D:\theSolver\PSLogin.aspx Line: 44
    > >
    > > Stack Trace:
    > >
    > > [SecurityException: Requested registry access is not allowed.]
    > > Microsoft.Win32.RegistryKey.OpenSubKey(String name, Boolean writable)
    > > +473
    > > System.Diagnostics.EventLog.CreateEventSource(String source, String
    > > logName, String machineName, Boolean useMutex) +443
    > > System.Diagnostics.EventLog.WriteEntry(String message, EventLogEntryType
    > > type, Int32 eventID, Int16 category, Byte[] rawData) +347
    > > System.Diagnostics.EventLog.WriteEntry(String message, EventLogEntryType
    > > type, Int32 eventID, Int16 category) +21
    > > System.Diagnostics.EventLog.WriteEntry(String message, EventLogEntryType
    > > type, Int32 eventID) +15
    > > System.Diagnostics.EventLog.WriteEntry(String message, EventLogEntryType
    > > type) +11
    > >
    > > PositiveSolutions.SystemUser.PositiveSolutions.ISystemUser.VerifyLogin(String
    > > EmailId, String Password, Int32 RequesterId, String UDL) +955
    > > ASP.PSLogin_aspx.__Render__control1(HtmlTextWriter __output, Control
    > > parameterContainer) in D:\theSolver\PSLogin.aspx:44
    > > System.Web.UI.Control.RenderChildren(HtmlTextWriter writer) +27
    > > System.Web.UI.Control.Render(HtmlTextWriter writer) +7
    > > System.Web.UI.Control.RenderControl(HtmlTextWriter writer) +243
    > > System.Web.UI.Page.ProcessRequestMain() +2112
    > > System.Web.UI.Page.ProcessRequest() +218
    > > System.Web.UI.Page.ProcessRequest(HttpContext context) +18
    > >
    > > System.Web.CallHandlerExecutionStep.System.Web.HttpApplication+IExecutionStep.Execute()
    > > +179
    > > System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean&
    > > completedSynchronously) +87
    > >
    > >
    > > Version Information: Microsoft .NET Framework Version:1.1.4322.2032;
    > > ASP.NET
    > > Version:1.1.4322.2032
    > >
    > > So I used the configuration utility and here's what my security.config
    > > looks
    > > like:
    > > <CodeGroup class="UnionCodeGroup"
    > > version="1"
    > > PermissionSetName="FullTrust"
    > > Name="PBSGroup"
    > > Description="PBS Code group">
    > > <IMembershipCondition
    > > class="StrongNameMembershipCondition"
    > > version="1"
    > >
    > > PublicKeyBlob="00240000048000009400000006020000002400005253413100040000010001002D1F61710370C9861930434A1516A75F4485DFFF77AC5BD414241318DAD0E1686219397B3D1AD5C272D37DF52BE785FFD56281C800636E21FB47093A6E0FB793901EBBB7884609E5BE659FB27B9BEEA45F195F99C522A892691935C1DB01FE0F4499E75BFD98EC1FE979319BE55DFADBCB8D582E96A67325D9E22EAF1D1C49EA"/>
    > > </CodeGroup>
    > >
    > > and I manually editted my machine.config as follows:
    > >
    > > <location allowOverride="true">
    > > <system.web>
    > > <securityPolicy>
    > > <trustLevel name="Full" policyFile="internal" />
    > > <trustLevel name="High" policyFile="web_hightrust.config"
    > > />
    > > <trustLevel name="Medium"
    > > policyFile="web_mediumtrust.config" />
    > > <trustLevel name="Low" policyFile="web_lowtrust.config" />
    > > <trustLevel name="Minimal"
    > > policyFile="web_minimaltrust.config" />
    > > </securityPolicy>
    > >
    > > <!-- level="[Full|High|Medium|Low|Minimal]" -->
    > > <trust level="Full" originUrl="http://127.0.0.1/*" />
    > >
    > > </system.web>
    > > </location>
    > >
    > > Any thoughts on what I'm overlooking?
    > >
    > > Thanks in advance
    >
    >
    >


  • Next message: Patrick.O.Ige: "Re: Active Directory vs SqlServer which way to go?"

    Relevant Pages

    • Re: ASPNET cant write in event log on win XP
      ... Yes the default registry permissions on XP/2003 are tighter than on 2000. ... The first time your app tries to write to the event log, ... Event log sources are stored in the registry under: ...
      (microsoft.public.dotnet.framework)
    • Re: Win XP event log: Access denied
      ... Yes the default registry permissions on XP/2003 are tighter than on 2000. ... The first time your app tries to write to the event log, ... Event log sources are stored in the registry under: ...
      (microsoft.public.dotnet.framework.aspnet.security)
    • Re: Event Log Trust Level?
      ... Any idea on what permissions to give ASPNET (registry ... I don't fancy the installer option. ... >What I do in this case is install the event log as part ... >> source, String logName, String machineName, Boolean ...
      (microsoft.public.dotnet.security)
    • Re: security exception within Microsoft Application Block ExceptionManager.vb
      ... I am in the registry now. ... > ASPNET account doesn't have permission to create EventLog's, ... > Accessing the Event Log ... > not have sufficient permissions to create new event sources. ...
      (microsoft.public.dotnet.framework.aspnet.security)
    • Re: ASPNET cant write in event log on win XP
      ... I also put ASPNET in ... >> Changing file and folder permissions isn't going to help anything. ... >> to change permissions for the Event Log. ...
      (microsoft.public.dotnet.framework.aspnet)