Security :: Unable To Cast Custom Identity When Using Application_AuthenticateRequest?
Feb 8, 2010
When I add
if (Context.User != null)
{
if (Context.User.Identity.IsAuthenticated)
{
if (!(Context.User is AdministratorPrincipal))
{
Admin.Web.Principal.AdministratorPrincipal newUser = new Admin.Web.Principal.AdministratorPrincipal(Context.User.Identity.Name);
}
}
}
to Application_AuthenticateRequest in global.asax file i always get an error when I try to reference it
Unable to cast object of type 'Admin.Web.Identity.AdministratorIdentity' to type 'Admin.Web.Identity.AdministratorIdentity'.
protected void Page_Load(object sender, System.EventArgs e)
Line 26: {
Line 27: this.adminID = ((AdministratorIdentity)HttpContext.Current.User.Identity).AdminID.ToString();
Line 28: }
I did a test and tried to move the code from global.asax to a Page_Load() of webform and worked fine.
I have implemented rights based security as I describe here: http://forums.asp.net/p/1380280/2916291.aspxThis has been working well for awhile now, but I am moving the site to IIS 7 and encountering problems. I am able to reach the login screen for my app - but upon login get this error: "Unable to cast object of type 'System.Web.Security.RolePrincipal' to type 'RightsLib.RightPrincipal'."As described in the linked post, I have a "RightsLib.dll" that contains the relevant classes like "RightsHttpModule.cs", "RightPrincipal.cs" etc...My app no longer seems to be able to work with RightsLib.dll. RightsLib.dll resides in the bin directory of my app, and I have a reference to it in my project.me what I'm doing wrong, or what has changed to affect this in IIS 7?The only relevant entry in Web.config I'm aware of.
I have a custom oledb role provider that pretty much a cust and past of:
[URL]
except I've used oledb instead of odbc. I'm connecting to an oracle database and the tables have been created with out any issues. now if I go into the Website Administration Tool and try to create a new role I get the error
"Specified cast is not valid."
I can create a role directly in the database (through TOAD) and the role will show up in the .NET WAT, so I know it can make the connection and read the info just fine. I just can't create or delete or modify a role without the above error.
Why does Application_AuthenticateRequest make so many round trips before actually loading a page. I've noticed that at times it will process the same logic 10 or more times before actually loading a single page?
I don't understand why this is happening, and it makes me worry about excessive & unnecessary performance loads.
I'm in the middle of moving a web application from IIS6 to IIS7. I've enabled "Windows Authentication" and added <deny users="?" /> to the authorization section of my web.config file. When the app was running on IIS6 my users where able to access the web app without logging in because their windows login was automatically recognized. This does not seem to be the case in II7. I can not get a value for "Current.User.Identity.Name" in my ASP.Net code.
when ever i check User.Identity.AuthenticationType the returned string is 'Custom' always, doesn't matter my authentication type is 'Windows' or '''Forms'.
I want to do some different coding in aspx.cs for windows and forms authentication, but i am unable to differentiate between them because 'User.Identity.AuthenticationType' always returns 'Custom'.
I have a web site that is using windows authentication. 'Enable anonymous access' is unchecked. It works when I call it through Visual Studio but when I put the site on the server I get the following error:
Unable to cast object of type 'System.Security.Principal.GenericPrincipal' to type 'System.Web.Security.RolePrincipal'.
I need some help on the row updating for a gridview that i bind manually to a list, not using objectdatasource or sqldatasourcehere is my rowupdating. What i want to do for now is just get the values from the textboxes and I will store them to sting variables then I will call my update function and pass those as parameters. How do I get the data from the textboxes that the user just edited. I have the following but I am getting an error: "unable to cast object of type System.UI.LiteralControl to type System.UI.TextBox
I get this error when trying to export selected rows in gridview to pdf format
"Unable to cast object of type 'iTextSharp.text.html.simpleparser.CellWrapper' to type 'iTextSharp.text.Paragraph'."
This my code below:
using (StringWriter sw = new StringWriter()) { using (HtmlTextWriter hw = new HtmlTextWriter(sw)) { gdfacture.Columns[0].Visible = false; foreach (GridViewRow row in gdfacture.Rows) {
I'm using the default SqlMembershipProvider,but I've created a custom MembershipUser class (SoeMembershipUser) because I needed a "DisplayName" property.All the DisplayName does is look at the UserName and format it differently.When I try to cast a MembershipUser to a SoeMembershipUser user I get an InvalidCastException.
Exact error is: "Unable to cast object of type 'System.Web.Security.MembershipUser' to type 'Soe.Tracker.SoeMembershipUser'."
Here is the code that fails:
SoeMembershipUser user = (SoeMembershipUser)Membership.GetUser(username); // invalid cast
I have also tried casting later like so:
MembershipUser user = Membershipship.GetUser(username); // ok ... string displayName = ((SoeMembershipUser)user).DisplayName; // invalid cast
Here is the SoeMembershipUser class:
NOTE: I left off the constructors at first, but added them in later when I started having problems. Adding them made no difference.
public class SoeMembershipUser : MembershipUser { public SoeMembershipUser() : base()
I just not created a new database with 2 tables in it. In a table, I have set a column as a primary key and trying to change its properties i.e. setting is Identity to YES, but am not able to do so.
I am trying to pass a collection of Dropdown controls as a parameter to a method which takes a collection of type Control as input. While executing I get the following error:
"Unable to cast object of type 'd__a31[System.Web.UI.WebControls.DropDownList]' to type 'System.Collections.Generic.IEnumerable1[System.Web.UI.Control]'."
I wanted to delete the record from data but I receive this error "Unable to cast object of type 'System.Data.Linq.DataQuery`1[training_eval.Course]' to type 'training_eval.Course'.
Dim eval_sure = From ev In db.Evaluates Where ev.course_id = indexcourse Select ev.course_id Dim del_course = From c In db.Courses Where c.Course_id = indexcourse db.Courses.DeleteOnSubmit(del_course) db.SubmitChanges()
This error is occuring randomly, and I can't seem to pinpoint what is causing it. For the most part, the code works fine. I'm confused why it works sometimes, but then suddently craps out on me, lol.It happens in the code when I call upon the asp.net membership provider. It only seems to happen when i use Membership.GetUser() to grab the logged in user's information.
I have installed the final version of Crystal Reports for Visual Studio 2010. I created a new ASP.Net project, saved it, closed it, and then came back to it later. I was prompted to convert the project because of an out of date version of Crystal Reports. But I just created the project...how can the version already be out of date? Also, once the conversion is complete the CrystalReportViewers error stating "Unable to cast object of type 'CrystalDecisions.Web.CrystalReportViewer' to type 'CrystalDecisions.Web.CrystalReportViewerBase'. I am using .NET Framework 3.5 (I cannot use 4.0 for other reasons). Is this the cause?
I have identity impersonate = true in the Web.config file. I have integrated security = true in the DB connection string in the Web.config file.Before identity impersonate was true,users were able to access the DB through the web service account (seemingly).Now I get an error which says " Login failed for ... " because I am aware there is no specific account for that user in the permissions for that DB instance.I needed to set identity impersonate = true because the web service does not have access to the Active Directory,which I need to retrieve certain user information.
My question is,does identity impersonate = true override the integrated security and attempt to user the authenticated user's account to connect to the DB? Is there a simple way to prevent this in the Web.config itself?If not,would programatically impersonating the user within the Active Directory query functions and setting identity impersonate = false do the trick here?
My website security is configured with "Windows Integrated Security" only (anonymous is disabled).
I also want to set a specific account to run the w3wp.exe process using the Application Pool Identity to a domain account.
Running directly from the server works without any problem but from remote computers I always get the authenticaion window then the 401.1 error (after 3 attempts).
It seems that its the combination of "Windows Integrated Security" along with the "Application Pool Identity" that causes the problem. When I disable one of the two it works properly.
My server is Windows Server 2003 R2, running IIS 6.0.
Trying to explain this clearly. I have a dropdown listbox where user can select multiple names. These names are then selected/inserted into db table in a loop. Table is displayed in an editable gridview. I have a main sqldatasource1 on my aspx page with select/insert/update permissions, but because select command doesnt work with parameters of multiple values (or does it?), i resorted to using an alternative sql datasource in the codebehind in order to run the select query on the multiple values chosen from the dropdownlist to see if they were in my table.I now get this error when I go to select multiple names from the dropdown list
Unable to cast object of type 'System.Data.Common.DataRecordInternal' to type 'System.Data.DataRowView'.
global.asax:-I have defined a struct (my_struct)-I add a List of structs (List<my_struct>) to Application["MyList"] In default.aspx:-I have defined the exact struct (my_struct) and want to cast the Application["MyList"] object to the List of structs.
example: x = (List<my_struct>)Application["MyList"];
I receive this error "Unable to cast object of type 'System.Collections.Generic.List`1ASP.global_asax+my_struct]' to type 'System.Collections.Generic.List`1[_Default+my_struct]'
I've got a subweb as application. It's called ADMIN. It works fine when running locally but when deploying in the development web server, i got the error: Unable to cast object of type 'System.Web.HttpApplication' to type 'Microsoft.Practices.CompositeWeb.WebClientApplication'
I've got a App_global.asax.dll and App_global.asax.complied on the subweb folder Admin.