Jim Fawcett CSE686 – Internet Programming Summer 2005

Slides:



Advertisements
Similar presentations
Forms Authentication, Users, Roles, Membership Ventsislav Popov Crossroad Ltd.
Advertisements

SSL & SharePoint IT:Network:Applications. Agenda Secure Socket Layer Encryption 101 SharePoint Customization SharePoint Integration.
1 Supplement III: Security Controls What security services should network systems provide? Confidentiality Access Control Integrity Non-repudiation Authentication.
ASP.Net Security Chapter 10 Jeff Prosise’s Book. Authentication To ascertain the caller’s identity –Windows authentication –Forms authentication –Passport.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment, Enhanced Chapter 13: Administering Web Resources.
Module 5: Configuring Access to Internal Resources.
6/3/2015topic1 Web Security Qiang Yang Simon Fraser University Thanks: Francis Lau (HKU)
Core Web Service Security Patterns
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment Chapter 13: Administering Web Resources.
It’s always better live. MSDN Events Security Best Practices Part 2 of 2 Reducing Vulnerabilities using Visual Studio 2008.
ASP.NET Security MacDonald Ch. 18 MIS 424 MIS 424 Professor Sandvig Professor Sandvig.
Authenticating Users in an ASP.NET Application. Web Site Administration Tool From VS 2008, click Website/ ASP.Net Configuration to open Web Site Administration.
Securing and Sharing Files Over The Internet (Content Server Security) By Amihay Schwarz Instructor: Viktor Kulikov Software System Laboratory Department.
Design Aspects. User Type the URL address on the cell phone or web browser Not required to login.
ASP.NET 2.0 Chapter 6 Securing the ASP.NET Application.
Chapter 13 – Site Security. Internet Information Server ASP.NET Applications.NET Framework Windows NT/2000 Operating System Forms Passport Windows Certificates.
Access Control in IIS 6.0 Windows 2003 Server Prepared by- Shamima Rahman School of Science and Computer Engineering University of Houston - Clear Lake.
APACHE SERVER By Innovationframes.com »
CSCI 6962: Server-side Design and Programming
Internet Information Server 6.0. Overview  What’s New in IIS 6.0?  Built-in Accounts and IIS 6.0  IIS Pass-Through Authentication  Securing Web Traffic.
Delivering Excellence in Software Engineering ® EPAM Systems. All rights reserved. ASP.NET Authentication.
Edwin Sarmiento Microsoft MVP – Windows Server System Senior Systems Engineer/Database Administrator Fujitsu Asia Pte Ltd
.Net Security and Performance -has security slowed down the application By Krishnan Ganesh Madras.
SYSTEM ADMINISTRATION Chapter 13 Security Protocols.
Session 11: Security with ASP.NET
Forms Authentication, Users, Roles, Membership Svetlin Nakov Telerik Corporation
MCSE Guide to Microsoft Exchange Server 2003 Administration Chapter Four Configuring Outlook and Outlook Web Access.
Chapter 13 – Network Security
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment, Enhanced Chapter 13: Administering Web Resources.
Sagar Joshi Senior Security Consultant | ACE Team, Microsoft Information Security
IT:Network:Apps.  Microsoft Web Server ◦ Used by ~ 50% of Fortune 500 companies  Comes with Server OS  Expandable  Easy to use.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 Securing a Microsoft ASP.NET Web Application.
Protecting Internet Communications: Encryption  Encryption: Process of transforming plain text or data into cipher text that cannot be read by anyone.
1 Web services and security ---discuss different ways to enforce security Presenter: Han, Xue.
Module 5 Configuring Authentication. Module Overview Lesson 1: Understanding Classic SharePoint Authentication Providers Lesson 2: Understanding Federated.
Dr. Mustafa Cem Kasapbaşı Security in ASP.NET. Determining Security Requirements Restricted File Types.
Effective Security in ASP.Net Applications Jatin Sharma: Summer 2005.
Grid Chemistry System Architecture Overview Akylbek Zhumabayev.
1 Chapter Overview Password Protection Security Models Firewalls Security Protocols.
Hands-On Microsoft Windows Server Implementing Microsoft Internet Information Services Microsoft Internet Information Services (IIS) –Software included.
Module 11: Securing a Microsoft ASP.NET Web Application.
Slide 1 ASP Authentication There are basically three authentication modes Windows Passport Forms There are others through WCF You choose an authentication.
MEMBERSHIP AND IDENTITY Active server pages (ASP.NET) 1 Chapter-4.
IIS and.Net security -Vasudha Bhat. What is IIS? Why do we need IIS? Internet Information Services (IIS) is a Web server, its primary job is to accept.
Configuring and Troubleshooting Identity and Access Solutions with Windows Server® 2008 Active Directory®
1 Chapter Overview Creating Web Sites and FTP Sites Creating Virtual Directories Managing Site Security Troubleshooting IIS.
Security E-Learning Chapter 08. Security Control access to your web site –3 Techinques for Identifying users Giving users access to your site Securing.
© Copyright 2009 SSLPost 01. © Copyright 2009 SSLPost 02 a recipient is sent an encrypted that contains data specific to that recipient the data.
Configuring and Deploying Web Applications Lesson 7.
4.1 © 2004 Pearson Education, Inc. Exam Managing and Maintaining a Microsoft® Windows® Server 2003 Environment Lesson 12: Implementing Security.
IS 4506 Windows NTFS and IIS Security Features.  Overview Windows NTFS Server security Internet Information Server security features Securing communication.
ArcGIS for Server Security: Advanced
TOPIC: HTTPS (Security protocol)
Web Security CS-431.
Chapter 5 Electronic Commerce | Security Threats - Solution
Agenda Introduction Security flow for a request Authentication
ASP .NET MVC Authorization Training Videos
Chapter 5 : Designing Windows Server-Level Security Processes
Secure Sockets Layer (SSL)
Chapter 8 Building the Transaction Database
Radius, LDAP, Radius used in Authenticating Users
Chapter 5 Electronic Commerce | Security Threats - Solution
Web Services Security.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment Chapter 13: Administering Web Resources.
IBM Certified WAS 8.5 Administrator
Using SSL – Secure Socket Layer
IIS.
Created by : Asst. Prof. Ashish Shah
Designing IIS Security (IIS – Internet Information Service)
Electronic Payment Security Technologies
Presentation transcript:

Jim Fawcett CSE686 – Internet Programming Summer 2005 Asp.Net Security Jim Fawcett CSE686 – Internet Programming Summer 2005

Security Model Authentication Authorization Who do you say you are? User id Do you have proof? Password Authorization Do you have the priviledges to do a requested action?

Asp.Net Authentication Asp.Net directly supports three models: Authentication mode = None Application supplied security Authentication mode = Windows Based on Windows Accounts Suitable only for local network Authentication mode = Forms Manged by application with support for redirection and accessing identities provided by Asp.Net Authentication mode = PassPort Authentication credentials stored on Microsoft server Sites license the service

No Asp Supplied Authentication Asp.Net allows all users access to all asp pages It is up to the application to provide authentication and authorization Authentication and Role-based access provided by user control(s). Application uses session to tell if user is logged in. User signs in and is assigned roles from database by user control. Access to pages based on roles. No help from Windows doing this.

No Authentication Virtual directory allows anonymous access Web.Config file specifies: <authentication mode=“None”/> <authorization> <allow users=“*”/> </authorization> Its up to application to provide authentication CSE686 Labs have encouraged you to build authenticating control and provide your own redirections.

Security Settings for None

Windows Authentication Uses custom socket ports, as well as port 80, so won’t go through firewalls. Requires all users to have Windows accounts on server. Suitable only for site serving a local network. Remote access requires operation in a domain or Active Directory with Kerberos: http://support.microsoft.com/default.aspx?scid=kb;en-us;324276 http://support.microsoft.com/default.aspx?scid=kb;en-us;810572

Windows Authentication The major advantage of Windows Integrated Authentication is that you can use all of the Windows role-based security mechanisms. It’s easy to restrict access to a page to one or more roles and roles can be configured with specific permissions.

Security Settings for IWA

Forms Authentication Application provides login page. Asp.Net takes care of redirections. Application provides id and password storage and retrieval. Almost no help with role-based access. Can configure directories, using web.config files to accept or deny non-authenticated users: <deny users=‘?’/> // anonymous users <allow users=‘*’/> // allow all others

Forms Authentication Virtual directory allows anonymous access Web.Config file specifies: <authentication mode=“Forms”/> <forms loginUrl=“login.aspx”> <credentials … /> </forms> </authentication> <authorization> <deny users=“?”/> </authorization> Application provides login.aspx which uses System.Web.Security.FormsAuthentication to redirect after authentication. Application uses database to store and retreive user ids and passwords. Can logout using FormsAuthentication.SignOut();

Security Settings for Forms

Passport Authentication Fee-based service provided by Microsoft Won’t be discussed further

Role-Based Security without Windows Public web sites will almost certainly use Application supplied or Forms based authentication. Clients will not have a user account on the server, so Windows role-based security is no help. The site may need to define at least simple roles: New user Registered user Premium member

Role-Based Authorization So how do you provide role-base access? At login, retrieve user’s roles from db and store in session. Provide control on each page that specifies allowed roles. OnPageLoad, check user roles from session against allowed roles from control. Probably easiest to do this with custom authentication but workable with Forms Auth. Would help to have an administrator’s page to add users and define roles and role membership.

Security Issues Authentication √ Authorization √ Confidentiality Who are you? Authorization √ What are you allowed to access? Confidentiality Hiding content in volatile environment Integrity Detecting modification

Encrypted Channel with SSL Secure Sockets Layer provides an encrypted channel for transmitting sensitive data. Recognized by most browsers. Used by all the major sites: Amazon, … Uses 128 bit encryption.

Secure Sockets Layer (SSL) Requires third party certificate You generate a certificate request file using web server certificate wizard. Send to certificate authority, Verisign, … along with a check for $349 (renewed each year for $249). Wait for about three weeks. Install the certificate using the web server certificate wizard. You can generate certificates used only for development.

Requiring SSL SSL is invoked whenever the url prefix is https. You can force users to use SSL by setting directory properties. Virtual directory properties page allows you to require SSL if you have installed a certificate.

Using .Net Encryption You may need to encrypt password files or other sensitive information stored on your site. System.Security.Cryptography Public Key (asymmetric) algorithms DSA – DSACryptoServiceProvider RSA – RSACryptoServiceProvider Private Key (symmetric) algorithms DES – DESCryptoServideProvider Triple DES, RC2, Rijndael

Using .Net Hashing You may need to ensure that messages or files have not been tampered with. System.Security.Cryptography 128 Bit Hash MD5 – MD5CryptoServiceProvider class. 160 Bit Hash SHA1 – SHA1CryptoServiceProvider

References Asp Applications & Authentication Programming .Net, Jeff Prosise, Microsoft Press, 2002 Applications, Authentication, SSL ASP.NET Unleased, Second Edition, Stephen Walther, SAMS, 2004