Security :: Adding New Properties In .net Membership?
Dec 2, 2010My application uses .net membership, I added some new properties but on calling Profile.save() it still save the old values, What i am doing wrong?
[Code]....
[Code]....
My application uses .net membership, I added some new properties but on calling Profile.save() it still save the old values, What i am doing wrong?
[Code]....
[Code]....
I am using the Membership provider that is included in Framework 3.5. I need to be able to add properties to the user such as country and birth date. I have read about the alternative provider that microsoft distibutes called TableProvider where you can define extra properties in the webconfig. I hesitate a bit about using it as there where some stuff about adding rules to the database to allow access. Since i use a hosted server and i am almost clueless about database administration it got me enough worried to think out my own solution. A. any feedback about using table provider from people that have experience of it?
View 4 RepliesI've made a change to my web config membership properties and now I seem to be having issues changing my password. I originally had
minRequiredPasswordLength="7" minRequiredNonalphanumericCharacters="0"
I've change it to passwordStrengthRegularExpression="^(?=.{8,15}$)(?=.*[0-9])(?=.*[A-Z]).*" however it still keeps coming up telling me that I need at least 7 characters and one nonAlphaNumberic... I looked at my machine config and made some adjustments there so that
minRequiredPasswordLength="" minRequiredNonalphanumericCharacters="" were blank
In order to better learn various techniques in ASP.NET development, I've written an ASP.NET app at home, which I use for learning. (It's a simple application we use to track our video library.) When I first started it, I didn't bother with adding membership to it. However, I've recently thought it might be nice to add the ability to allow family members to vote on various movies, etc. In order to track their preferences, I'd need table in the database, etc. (I won't bother going into the details.) So I was thinking that it might be good to add ASP.NET membership to this app, but I've never done that before. Normally, I've only added membership to an ASP.NET app when I was first getting it started; not on an established app. Can I add ASP.NET membership to an older app?
And if the answer to that question is yes, then I would like to use simple Windows authentication. This is a simple peer-to-peer network I've got, everyone has an account (profile) on the box that hosts the ASP.NET app, so I would just use that. Right now this app is an ASP.NET 3.5 app, but I could move it up to ASP.NET 4.0.
I have DB (my.mdf ) with already created membership (aspnet_db tables). There are defined roles and users.
I would like to integrate it in my project.
I dropped *.mdf into App_Data folder. When I open app.net configuration (under menu Project) I can't see neither User nor Roles.
What step am I missing?
I'm currently writing a website in VWD2010 Express, which requires me to write a custom membership provider.
I've followed the tutorial here [URL] , which seems relatively straight forward.
I am, however, struggling at the stage where the custom membership provider is included in a site. Now obviously the tutorial writer is using a different version of VS to me, so I've had to adapt it somewhat. Instead of building the class as a dll, and referencing that in a new site, I've started a new site from scratch and added the custom membership provider to the Add_Code file (HDIMembershipProvider.vb). It is now required that I add details of the provider to the web.config file, which seems to be where I am encountering problems.
The tutorial requires me to add:
[Code]....
within the System.Web part of the web.config file. However, upon running the site I get the error:
Could not load type 'HDI.AspNet.Membership.HDIMembershipProvider'.
I realise that how you reference the class must have changed since the tutorial was written, but I can't for the life of me find the format I should be using, and trial&error has turned up nothing so far.
Its very easy to add users to roles by using the in built controls. but how can add users through customized login controls?. i have tried using
//MembershipUser m = Membership.CreateUser(name, pass, null);
Is it possible to more fields in User table If yes, how to do that? share sample code. Do we we need to change any membership stored procedures?
View 3 RepliesI'm not familliar with the membership provider class. On my create user page I have the following code
[Code]....
If I want to add some fieds like phone number and address, how can I do it? And what happen to the following function if those fields are added.
[Code]....
I am running windows 7 and NET Framework 4.
Problem is I dont know how to locate the asp.reg.sql tool that will do this using windows 7.
how to do this?
I would like to know simple thing, If i'm adding additional information to UserProfile such as: Country, PhoneNumber etc'.. So, I added a Table In my DB (which also Got all Membership Provider tables...)
UserProfile, and added Stored Procedures for it for Insert / Update... I would like to know, If I need to create in Business Object a Class for Profile Only? (Cause the User is managed Already by the Membership Provider) And Create for it Also in Business Logic -> ProfileManager with Methods that will use the Stored Procedures to Update and Insert Details? Do I need to do it like this? Or there is another way? What's the right way doing it?
The following code is used to add the asp membership tables to an already existing database instead of creating a seperate database for membership and having two databases in the application.
aspnet_regsql.exe -S .SQLEXPRESS -U username -P password -d databsename -A all
It works fine by adding the membership tables to the existing database that is located in the c drive, program files sqlserver folder.
But my database however is not in the c drive but located in my asp website app_data folder, so the above code does not give any error and the tables are not added after I run it. how can I now add the membership tables using the above code when my database is located in the website app_data folder,
I have a problem with my membership management. I moved the aspnet membership database to my MSSQL server and I would like to create an add user form not using the CreateUserWizard (I would like to add more information then in the simple CUW). I've created the form and I would like to use the Membership.CreateUser method to add the user. After running the script (VB) the user is available in the aspnet_Users table, also in the aspnet_UserInRoles table but not in the aspnet_Membership table. I'm sure that something is wrong with the configuration, I just can't find what.
[Code]....
I am wondering what's the easiest way to go about doing this. I am using the user signup form control that comes with .net and they can create user through the application and once they do users see the "members area" of my site.
However, they are only trial members. using my paypal form, once they pay for service, they become a paid member.. so I want to keep track of this in the membership table by having a column in that table: bit registeredUser. Do I have to create my own overriden membership class for this, at first I thought there was already a column like this called isApproved, but seems thats for something else because if its set to false user cannot even login.
I'm having a problem with a custom Membership implementation for ASP.NET using EF. The thing is, my web.config features the default values for the provider but at runtime those default are only being read in Initialize() the first time provider is instantiated (that happens for instance when I request the Register view via GET but when I fill in the form and POST to the controller the Initialize() on the provider class doesn't get called and all the provider settings are null or default value types value.
This is my web.config section:
[Code]....
Since my provider class is quite huge I am not posting it here but will post some parts of it if requested.
I am working in a Silverlight 4 + RIA Services application. On the server side I am using Entity Framework and SQL Server. The user authentication is performed in the application using the default ASP.NET Membership Provider.
I am also using some profile properties to store some user preferences. Unfortunately I came across a situation where I have to change one of this properties in all users.
Altought I am using EF to manage data persistence, the ASP Membership provider tables are not in my entities diagram, since everything I must do regarding membership is performed using the objects available on the provider.
So I was thinking to use this objects to change the user prefrences, but my question is about what happens if something fails? Is there any transaction object I could use on the Membership objects to perform an atomic operation?
I know EF supports transactions, but in this case I would have to add the asp.net membership tables to my diagram.. only for that operation.
I'm using DotNetOpenAuth as my membership system, and the way I have it working now seems to be working quite well. What I'd like to do however is build into my website the ability to check user credentials against the AuthCookie rather than a session. In the membership provider, I can check for the username like this
string UserName = System.Web.HttpContext.Current.User.Identity.Name;
''# which returns the OpenId ClaimedIdentifier
What I'm wondering is if there is a way to extend this so that I can retrieve custom properties from the AuthCookie rather than having to create my own session object. Currently I have this setup.
UserSessionModal
Namespace Domain
Public Class UserSessionModel
Public Property ID As Integer
Public Property RegionID As Integer
Public Property Username As String
Public Property Slug As String
Public Sub New(ByVal user As User)
_ID = user.ID
_RegionID = user.RegionID
_Username = user.UserName
_Slug = Replace(user.UserName, " ", "-")
End Sub
End Class
End Namespace
BaseController (inherited by all controllers)
Protected Overrides Function CreateActionInvoker() As System.Web.Mvc.IActionInvoker
''# Create a UserInfo object for the logged in user
''# and store it in a session state.
If Session("UserInfo") Is Nothing AndAlso User.Identity.IsAuthenticated Then
Dim user As Domain.UserSessionModel = New Domain.UserSessionModel(OpenIdService.GetOpenId(HttpContext.User.Identity.Name).User)
Session("UserInfo") = user
End If
Return MyBase.CreateActionInvoker()
End Function
Then in my views I do something like this
<%
Dim user As MyApp.Core.Domain.UserSessionModel = DirectCast(Session("UserInfo"), MyApp.Core.Domain.UserSessionModel)
%>
<%: Html.ActionLink(user.UserName, "Details", "Users", New With {.id = user.ID, .slug = user.Slug}, Nothing)%>
What I really need to be able to do is remove the Session stuff all together and just simply check the AuthCookie for my custom properties ID, RegionID, Username, and Slug. I can already get the "ClaimedIdentifier" out of the AuthCookie using HttpContext.User.Identity.Name... I just need to be able to extend it.
I have an object with a couple of DateTime properties:
public DateTime Start_Date { get; set; }
public DateTime? End_Date { get; set; }
I would like to set a format for each of these, along the lines of
Start_Date.ToString("M/d/yyyy hh:mm tt")
Do I have to code the get, or is there an elegant way to do this?
I'm trying to inherit the GridView such that I can add a collection of filter properties which can be shown at design or altered at run time which would be like:-
Is there a way to do this in asp.net 2.0 GridView.
I'm having difficulties with adding sub-properties into Property sheet.
for example:
let's say I've created a web-control with a textbox in it. I can add to my web-control a new property such as:
public TextBox MyTextBox
{
get
{
return m_TextBox;
}
set
{
m_TextBox = value;
}
}
and this will be enough for me to add the TextBox into the property sheet of the web control each time i use this web-control.
My problem is with adding the TextBox properties into the property sheet with the sign "+" next to the "MyTextBox" property.
I'm using VS2008 if it's make the difference.
I'm looking for a good way to add arbitrary properties to the objects in a strongly typed list, based on the principle that I shouldn't pass a DataTable from my business layer to my presentation layer.For example, I might have a Category class with the properties CategoryId and Title. On one page I would like to fetch a list of all categories (ie. List<Category>) together with the most expensive product in each category.A while ago, I would have just returned a DataTable with some additional columns in it with the product data in, but I'm trying not to do that -- it would be trivial to set up it's not good practice. One option is to add a MostExpensiveProduct property to my Category class, but I might want to display the most recently added product in another case, or the cheapest product, so I'd end up adding a lot of properties to cover all the options. This just doesn't feel right to me.Am I missing a trick here? What is the best way of doing this? Or should I just be returning a DataTable to which I can add as many columns as I need and not worry about it?
View 3 RepliesI have a c# v3.5 framework site that I am doing some maintenance on. I wish to use Automatic Properties but whenever I try to add one, the compiler fails [as below]. I have added the System.Core.dll (and it is in the web.config ok) but still no joy.
Error 6 'XXX.Archive.TypeOfArchive.get' must declare a body because it is not marked abstract or extern
I am playing around with the membership database and have a question. Lets say I have a company called company ABC. There are 10 branches that belong to comapany ABC.
IS there anyway to create a relationship within the database using company ABC as the parent and having the 10 branches as childs?
I am trying to use the ASP Membership database, and I am having trouble getting the provider connected. I added the following to my Web.Config.
Code:
<membership defaultProvider="SqlMembershipProvider">
<providers>
<clear />
<add
name="SqlMembershipProvider"
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="NewsletterSQLConnectionString"
/>
</providers>
</membership>
The connectionstring exists, and I am able to use it on the page to load and access a GridView control. In the Website Administration Tool, under Provider, and selecting 'Select a single provider for all site management data', I don't see any providers, indicating that this new provider is not loaded. If I remove the Clear, I do see the AspNetSqlProvider, however when I test it I get the error that it can not connect to the database.
I have the default membership table that was added automatically, then just used server explorer to add more columns, like FirstName, LastName, etc. In my code I can access all the default columns, but not the ones I created. Any thing special I need to do?
Here is how I access the table. using user. gives me all columns, but the one I created.
string userName = User.Identity.Name;
MembershipUser user = (MembershipUser)System.Web.Security.Membership.GetUser(userName).ProviderUserKey;