/samples/Microsoft.AspNet.SignalR.Hosting.AspNet.Samples/Hubs/Auth/Default.aspx.cs
C# | 35 lines | 32 code | 3 blank | 0 comment | 1 complexity | 992c2ba6d56f57fdaa3dbf059fd6785a MD5 | raw file
Possible License(s): Apache-2.0, CC-BY-SA-3.0
- using System;
- using System.Linq;
- using System.Security.Principal;
- using System.Web.Security;
- using System.Web.UI;
- namespace Microsoft.AspNet.SignalR.Hosting.AspNet.Samples.Hubs.Auth
- {
- public partial class _Default : Page
- {
- protected void Login(object sender, EventArgs e)
- {
- var userId = Guid.NewGuid().ToString();
- FormsAuthentication.SetAuthCookie(userId, createPersistentCookie: false);
- var identity = new GenericIdentity(userName.Text);
- var principal = new GenericPrincipal(identity, SplitString(roles.Text));
- Context.User = principal;
- Cache[userId] = principal;
- }
- private static string[] SplitString(string original)
- {
- if (String.IsNullOrEmpty(original))
- {
- return new string[0];
- }
- var split = from piece in original.Split(',')
- let trimmed = piece.Trim()
- where !String.IsNullOrEmpty(trimmed)
- select trimmed;
- return split.ToArray();
- }
- }
- }