473,772 Members | 2,388 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Anonymous User

Hello,

On my web site I have a property, Visitor, which is available for
Anonymous users:

[Serializable()]
public class Visitor {
public CultureInfo Culture { get; set; }
public List<GuidPolls { get; set; }
}

Polls is a list of the Polls Guid on which the user has voted.

Instead of storing this here should I store the UserId on each vote
she/he makes? An anonymous user has an ID (Guid) associated to it?

And when the user registers, do I need to migrate this information?
Visitor data is important to anonymous and registered users.

Thanks,

Miguel
Oct 8 '08 #1
3 2518
Is visitor data important even if the visitor never joins? If so, persist
the data when the user takes the poll and don't store it on the visitor
object.

Instead, create some type of token (GUID is fine) to represent the visitor
in the database and "persist" that to the visitor's computer in a cookie.
That way if they do not join today, and do not clear their cookies, you
might still be able to link them to their data.

Other ways to attempt to identify an anon user fall flat. IP is only useful
when the person has a permanent IP. Almost every service uses dynamic IPs
now, so it is unlikely the user will continue to get the same IP forever.
Although, it might be useful for short term (not sure what the average lease
time is amongst broadband providers).

Now, back to your visitor object. Unless you are using it to draw the polls
for the user on every page, carrying around numerous Guids is useless. You
can look up that information when the user gets to the polls page and not
take that trip before then. Culture information, which is used on every
page, is useful, as are things like color choices, nickname, etc, but the
cookie problem means you should eventually clear out visitors that do not
join, especially if the site is popular.

Hope this helps!

--
Gregory A. Beamer
MVP, MCP: +I, SE, SD, DBA

Subscribe to my blog
http://feeds.feedburner.com/GregoryBeamer#

or just read it:
http://feeds.feedburner.com/GregoryBeamer

*************** *************** **************
| Think outside the box! |
*************** *************** **************
"shapper" <md*****@gmail. comwrote in message
news:24******** *************** ***********@f63 g2000hsf.google groups.com...
Hello,

On my web site I have a property, Visitor, which is available for
Anonymous users:

[Serializable()]
public class Visitor {
public CultureInfo Culture { get; set; }
public List<GuidPolls { get; set; }
}

Polls is a list of the Polls Guid on which the user has voted.

Instead of storing this here should I store the UserId on each vote
she/he makes? An anonymous user has an ID (Guid) associated to it?

And when the user registers, do I need to migrate this information?
Visitor data is important to anonymous and registered users.

Thanks,

Miguel
Oct 8 '08 #2
On Oct 8, 2:49*pm, "Cowboy \(Gregory A. Beamer\)"
<NoSpamMgbwo... @comcast.netNoS pamMwrote:
Is visitor data important even if the visitor never joins? If so, persist
the data when the user takes the poll and don't store it on the visitor
object.

Instead, create some type of token (GUID is fine) to represent the visitor
in the database and "persist" that to the visitor's computer in a cookie.
That way if they do not join today, and do not clear their cookies, you
might still be able to link them to their data.
But when a user visits the web site won't he be added to Users table
and IsAnonymous set to true? then I can use the UserID of the
anonymous user or not?

Yes, I know now and then I will need to delete anonymous users to
prevent the database to get to big.
Bu I could delete only anonymous users that has not accessed the web
site on the last, let's say, 4 months.
>
Other ways to attempt to identify an anon user fall flat. IP is only useful
when the person has a permanent IP. Almost every service uses dynamic IPs
now, so it is unlikely the user will continue to get the same IP forever.
Although, it might be useful for short term (not sure what the average lease
time is amongst broadband providers).

Now, back to your visitor object. Unless you are using it to draw the polls
for the user on every page, carrying around numerous Guids is useless. You
can look up that information when the user gets to the polls page and not
take that trip before then.
What do you mean? I got lost ...

Basically, my idea is every time a user votes on a poll I add the
PollID to visitor Polls property.
When he votes in a poll I check if that PollID exists in Polls
property and display a message if it does.

This is not critical ... it it would be I would allow only registered
users to vote. It is just a way to make voting a little bit more
"fair".

Culture information, which is used on every
page, is useful, as are things like color choices, nickname, etc, but the
cookie problem means you should eventually clear out visitors that do not
join, especially if the site is popular.

Hope this helps!

--
Gregory A. Beamer
MVP, MCP: +I, SE, SD, DBA

Subscribe to my bloghttp://feeds.feedburne r.com/GregoryBeamer#

or just read it:http://feeds.feedburner.com/GregoryBeamer

*************** *************** **************
| Think outside the box! * * * * * * * * * * * * * * * |
*************** *************** **************" shapper" <mdmo...@gmail. com>wrote in message

news:24******** *************** ***********@f63 g2000hsf.google groups.com...
Hello,
On my web site I have a property, Visitor, which is available for
Anonymous users:
*[Serializable()]
*public class Visitor {
* *public CultureInfo Culture { get; set; }
* *public List<GuidPolls { get; set; }
*}
Polls is a list of the Polls Guid on which the user has voted.
Instead of storing this here should I store the UserId on each vote
she/he makes? An anonymous user has an ID (Guid) associated to it?
And when the user registers, do I need to migrate this information?
Visitor data is important to anonymous and registered users.
Thanks,
Miguel


Oct 8 '08 #3
For some reason I am not getting >s in the response, so I have surrounded
your queries with <query></query>

"shapper" <md*****@gmail. comwrote in message
news:83******** *************** ***********@k37 g2000hsf.google groups.com...
On Oct 8, 2:49 pm, "Cowboy \(Gregory A. Beamer\)"
<NoSpamMgbwo... @comcast.netNoS pamMwrote:
Is visitor data important even if the visitor never joins? If so, persist
the data when the user takes the poll and don't store it on the visitor
object.

Instead, create some type of token (GUID is fine) to represent the visitor
in the database and "persist" that to the visitor's computer in a cookie.
That way if they do not join today, and do not clear their cookies, you
might still be able to link them to their data.
<query>
But when a user visits the web site won't he be added to Users table
and IsAnonymous set to true? then I can use the UserID of the
anonymous user or not?

Yes, I know now and then I will need to delete anonymous users to
prevent the database to get to big.
Bu I could delete only anonymous users that has not accessed the web
site on the last, let's say, 4 months.
</query>

You can add an anonymous user. The problem is this only works for this
session, as the user can delete any evidence he ever visited your site if
there is no method to persist the information on his computer (cookie?) or
he deletes said cookie, if you use cookies. He then becomes a completely
different user to your application. If this information is useful, then
there is no problem, but the only information you can use from the user is
info from his latest visit. The other anonymous users created for him are
simply taking up space in your database.

And you can selectively delete users that have not revisited, if you desire.
But, as mentioned, you can have 10 visitors representing one person and
never even know it. That may be fine for you. I don't know.

The point is this. When an anonymous user hits an application that uses the
ASP.NET membership, and is set to care about individual anonymous users
(rather than grouping all under one single "account"), it identifies the
user with a cookie. If the user deletes that cookie, and returns to the
site, the application has no clue who he is and creates another account.
This is not a high risk, but it is something to keep in mind.

If the information attached to this account is useful, even if the person
never joins, then it is useful to keep it. If not, then I would not even
create an anonymous account for that user and instead store everything in
the cookie, hoping the user does not delete the cookie.

What is hard, with web apps, is it is impossible to identify a user who
cleans up after himself. The only way is to force anonymous people to create
accounts to do anything other than read on your site. Then, they have to log
in and you know who they are. A user that allows you to keep tabs on them
(via cookies) can be identified, but only as long as he allows it. The
anonymous user account works the same way. There is no guaranteed way to
link it back to a user that does not want you to do so.

My thought is there is no reason to clutter up the database with different
anonymous accounts. I would send out a cookie to the user and store info
there. Then, when the user joins, I would pull information from the cookie
when the form is submitted and put that in his profile. If the user deletes
the cookie, I lose this information, but I lose it if he deletes cookies and
there is an ASP.NET anonymous account for him, as well. I see storing a
cookie as less code and less information stored than potentially creating
numerous accounts because this user deletes his cookies regularly.
>
Other ways to attempt to identify an anon user fall flat. IP is only
useful
when the person has a permanent IP. Almost every service uses dynamic IPs
now, so it is unlikely the user will continue to get the same IP forever.
Although, it might be useful for short term (not sure what the average
lease
time is amongst broadband providers).

Now, back to your visitor object. Unless you are using it to draw the
polls
for the user on every page, carrying around numerous Guids is useless. You
can look up that information when the user gets to the polls page and not
take that trip before then.
<query>
What do you mean? I got lost ...

Basically, my idea is every time a user votes on a poll I add the
PollID to visitor Polls property.
When he votes in a poll I check if that PollID exists in Polls
property and display a message if it does.

This is not critical ... it it would be I would allow only registered
users to vote. It is just a way to make voting a little bit more
"fair".
</query>

In general, you are best to keep objects with information that is necessary
to identify the user (a user id for example) and information used by all, or
at least most, pages.

Culture Information is used by every page, as it helps set language, number
separators, etc. It is a good thing to use on a user object. If the polls
show up on every page, it is useful to keep the list cached in an object. If
they only show up when the person hits the Poll page, then you are better to
look that information up when the user hits that page.

Hope this helps!

--
Gregory A. Beamer
MVP, MCP: +I, SE, SD, DBA

Subscribe to my blog
http://feeds.feedburner.com/GregoryBeamer#

or just read it:
http://feeds.feedburner.com/GregoryBeamer

*************** *************** **************
| Think outside the box! |
*************** *************** **************

Oct 9 '08 #4

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

2
2904
by: Kevin Hoskins | last post by:
Is there anyway to force authentication of the Anonymous user? Here is the situation: I have an ASP.NET page which calls an assembly which requires a certain level of permissions. The page is running in a virtual server whose anonymous user is a network account with the required permissions. This allows anyone to view the page and see the data. This is working great, however, due to what is being returned, the page load time is longer...
2
2910
by: pv | last post by:
Hi everyone, I need help with following scenario, please: Users are accessing same web server from intranet (users previously authenticated in Active Dir) and from extranet (common public users). If user is from intranet, web server should recognize it and application should create additional options in controls regarding groups the user belongs to. If user is from extranet it should be logged in as anonymous and a link to login page...
10
4517
by: et | last post by:
I have an asp.net program that uses a connection string, using integrated security to connect to a sql database. It runs fine on one server, but the other server gives me the error that "Login failed for user "NT AUTHORITY/ANONYMOUS LOGON". Why would this be? There is no reason it should even be trying to login to using NT Authority/Anonymous login. The IIS Server is set to turn off anonymous logins, and use integrated security, and my...
4
3510
by: Buggyman | last post by:
Hi, I'm having problems with good old error... Login failed for user 'NT Authority\Anonymous logon'. The default web page comes up fine, but when the user attempts to log in (which checks stored usernames in the database etc) then the error occurs. a) The Web server is on a seperate box to SQL Server. b) I'm using forms authentication. c) I've enabled anonymous access, setting it to the correct domain account,
2
1593
by: Rodusa | last post by:
I am trying to Synchronize anonymous users with authenticated uses using Profile_MigrateAnonymous. However Profile_MigrateAnonymous only carries information in one direction, for instance, if I delete one item from the basket in a shopping cart when the user is still anonymous, the item comes back right after I log out. I would like to know if is there any way to synchronize both directions so that the user sees the information in the...
1
1514
by: Fred | last post by:
If I select Anonymous in IIS under Security for my application and provide a user other than IUSR which has permissions to create folders, etc. on another server, I am able to create the folder I need. However, if I don't select Anonymous, and my NT logon is a user with permissions to create folders on the other server (found in Request.ServerVariables("LOGON_USER")), the applcation fails and I get a "Permission denied" error on the line of...
0
1150
by: ashish | last post by:
hi all, I am working with a custom profile provider that stores my business object as profile with anonymous identification turned on. I have a question regarding how it is supposed to work with forms authentication etc We want to remember user settings every time they visit the site, anonymous or not
3
7725
by: SRK | last post by:
Hi, I wanted to use an anonymous union within an structure something like below - struct Test { union { std::string user; //char user; std::string role; //char role;
2
2392
by: shapper | last post by:
Hello, I am trying to get an anonymous user using the following: MembershipUser user = System.Web.Security.Membership.GetUser(); However, user is null. On my Web.Config I have the following: <anonymousIdentification cookieless="UseCookies"
0
9454
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
10264
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
10106
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
10039
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
9914
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
1
7461
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
5355
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
1
4009
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
3
2851
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.