Security E-Learning Chapter 08. Security Control access to your web site –3 Techinques for Identifying users Giving users access to your site Securing.

Slides:



Advertisements
Similar presentations
Enabling Secure Internet Access with ISA Server
Advertisements

Forms Authentication, Users, Roles, Membership Ventsislav Popov Crossroad Ltd.
1 Configuring Internet- related services (April 22, 2015) © Abdou Illia, Spring 2015.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment, Enhanced Chapter 13: Administering Web Resources.
16.1 © 2004 Pearson Education, Inc. Exam Planning, Implementing, and Maintaining a Microsoft® Windows® Server 2003 Active Directory Infrastructure.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment Chapter 13: Administering Web Resources.
1 Configuring Web services (Week 15, Monday 4/17/2006) © Abdou Illia, Spring 2006.
Authenticating Users in an ASP.NET Application. Web Site Administration Tool From VS 2008, click Website/ ASP.Net Configuration to open Web Site Administration.
Microsoft ASP.NET Security Venkat Chilakala Support Professional Microsoft Corporation.
Using Internet Information Server And Microsoft ® Internet Explorer To Implement Security On The Intranet HTTP.
Chapter 13 Chapter 13: Managing Internet and Network Interoperability.
Introduction To Windows NT ® Server And Internet Information Server.
ASP.NET 2.0 Chapter 6 Securing the ASP.NET Application.
How Clients and Servers Work Together. Objectives Learn about the interaction of clients and servers Explore the features and functions of Web servers.
Module 6 Windows 2000 Professional 6.1 Installation 6.2 Administration/User Interface 6.3 User Accounts 6.4 Managing the File System 6.5 Services.
Managing Identity and Permissions
Access Control in IIS 6.0 Windows 2003 Server Prepared by- Shamima Rahman School of Science and Computer Engineering University of Houston - Clear Lake.
Virtual Private Network (VPN) © N. Ganesan, Ph.D..
VPN Scenarios © N. Ganesan, Ph.D.. Chapter Objectives.
Module 4 Managing Client Access. Module Overview Configuring the Client Access Server Role Configuring Client Access Services for Outlook Clients Configuring.
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.
1 ASP.NET SECURITY Presenter: Van Nguyen. 2 Introduction Security is an integral part of any Web-based application. Understanding ASP.NET security will.
Edwin Sarmiento Microsoft MVP – Windows Server System Senior Systems Engineer/Database Administrator Fujitsu Asia Pte Ltd
Ins and Outs of Authenticating Users Requests to IIS 6.0 and ASP.NET Chris Adams Program Manager IIS Product Unit Microsoft Corporation.
Understanding Integrated Authentication in IIS Chris Adams IIS Supportability Lead Microsoft Corp.
Session 11: Security with ASP.NET
Module 8: Managing Client Configuration and Connectivity.
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.
Module 10: Configuring Windows XP Professional to Operate in Microsoft Networks.
CIM6400 CTNW (04/05) 1 CIM6400 CTNW Lesson 6 – More on Windows 2000.
Copyright 2000 eMation SECURITY - Controlling Data Access with
Course ILT Internet/intranet support Unit objectives Use the Internet Information Services snap-in to manage IIS, Web sites, virtual directories, and WebDAV.
© 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.
ArcGIS Server and Portal for ArcGIS An Introduction to Security
1 Chapter Overview Configuring Account Policies Configuring User Rights Configuring Security Options Configuring Internet Options.
.Net and Web Services Security CS795. Web Services A web application Does not have a user interface (as a traditional web application); instead, it exposes.
Module 5 Configuring Authentication. Module Overview Lesson 1: Understanding Classic SharePoint Authentication Providers Lesson 2: Understanding Federated.
MCTS Guide to Microsoft Windows Server 2008 Applications Infrastructure Configuration (Exam # ) Chapter Four Windows Server 2008 Remote Desktop Services,
Dr. Mustafa Cem Kasapbaşı Security in ASP.NET. Determining Security Requirements Restricted File Types.
Grid Chemistry System Architecture Overview Akylbek Zhumabayev.
1 Chapter Overview Password Protection Security Models Firewalls Security Protocols.
MCTS Guide to Microsoft Windows Server 2008 Applications Infrastructure Configuration (Exam # ) Chapter Five Windows Server 2008 Remote Desktop Services,
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.
Module 3 Configuring File Access and Printers on Windows 7 Clients.
Guide to MCSE , Second Edition, Enhanced1 The Windows XP Security Model User must logon with: Valid user ID Password User receives access token Access.
Ins and Outs of Authenticating Users Requests to IIS 6.0 and ASP.NET Chris Adams Program Manager IIS Product Unit Microsoft Corporation.
MEMBERSHIP AND IDENTITY Active server pages (ASP.NET) 1 Chapter-4.
GUDURU PRAVEEN REDDY.NET IMPERSONATION. Contents Introduction Impersonation Enabled Impersonation Disabled Impersonation Class Libraries Impersonation.
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®
Impersonation Bharat Kadia CS-795. What is Impersonation ? Dictionary-: To assume the character or appearance of someone ASP.NET-: Impersonation is the.
1 Chapter Overview Creating Web Sites and FTP Sites Creating Virtual Directories Managing Site Security Troubleshooting IIS.
Understand Internet Security LESSON Security Fundamentals.
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.
Business Objects XIr2 Windows NT Authentication Single Sign-on 18 August 2006.
Unit 7 Learning Objectives
Agenda Introduction Security flow for a request Authentication
Jim Fawcett CSE686 – Internet Programming Summer 2005
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment Chapter 13: Administering Web Resources.
IIS.
Created by : Asst. Prof. Ashish Shah
Configuring Internet-related services
Designing IIS Security (IIS – Internet Information Service)
Presentation transcript:

Security E-Learning Chapter 08

Security Control access to your web site –3 Techinques for Identifying users Giving users access to your site Securing data transmitted across the internet –Others can’t read it

Authenticating and Authorizing Users Lesson 1

Authentication and Authorization Authentication –The process of identifying users –“Who are you?” Authorization –The process of granting access based on identity –“I’ve checked your credentials out and you’re OK … Come on in!” Choose an Authorization strategy based on the type of application you’re creating

Anonymous Users Public web sites –Anyone can see information –Users are not authenticated Impersonation –Technique for allowing anonymous access to web site –Assigns a user account to an unknown user IUSER_ –Anonymous user account

Anonymous Access Account – See or Change priviledges Log in as administrator on server Start | Control Panel | Administrative Tools | Computer Management | Local Users and Groups | Users | rt-click on IUSER_ | Properties

IUSER_ Properties

Member of Guest group –Limited priviledges My ‘Member of’ –Debugger Users Group ASP.NET –Uses ASPNET account –Anything outside priviledges produces security exception – access denied –Exception appears in the Security Event Log of the Event Viewer

Restricting Anonymous Users Set Windows File Permissions Must have NTFS File System, FAT won’t work See Windows Security Help topics

Access by Authenticated Users Authenticated Users –Allows users to Access private information Perform restricted tasks (placing orders, etc.) 3 Ways to Authenticate –Windows Authentication Identify and authorize users based on server’s user list –Forms Authentication Directs users to a form that collects name and password Authenticates against user list or database –Passport Authentication Authenticated by Passport site hosted by Microsoft

System.Web.Security Namespace Windows, Forms, Passport Security classes provided in.NET by System.Web.Security namespace Visual Basic.NET Imports System.Web.Security Visual C# using System.Web.Security

Applying authentication methods to web application components Web App Component Web Forms (.aspx) Modules (.asax) Other resources that pass through web app executable Authentication Modes Windows Forms Passport Can use Web App Component (htm or html pages) Handled by IIS, not ASP.NET Can’t use directly x ASP.NET executable Must be mapped see Lesson 1

.NET Web Security Overview ASP.NET architecture

IIS and ASP.NET Interaction IIS Request comes in (for Web Form) If IIS authentication, Authorization performed Auth. Info added to request Info passed to ASP.NET runtime ASP.NET Windows Auth. Performed Request processed Forms ASP.NET checks forms auth. Cookie No cookie  login page If successful login, Auth. Cookie set User redirected to requested resource Passport ASP.NET checks for Passport Cookie No cookie  site’s Passport Login Page Successful login, cookie set User redirected to resource

Set/Change Authentication Method Used by IIS Open Internet Services Manager Select site, virtual directory or file you want to authenticate Right-click, select Properties Select Directory (or File) Security Tab In Anonymous Access and Authentication Control section, click Edit button In Authentication Methods dialog box, uncheck Anonymous Access check box. Check desired authentication

Set Authentication Method in IIS

Windows Authentication Lesson 2

Types of Windows Authentication Basic –User must supply user name and password –Supported by Netscape Navigator and IE –User credentials sent unencrypted –Should only be used with a secure channel (SSL) –SSL should be used on all pages, since credentials are passed on all subsequent requests Digest –Browser transmits a hash of the user’s credentials –Requires IE 5.0 or later –Password encryption can be reversed Integrated Windows Authentication –Kerebos or NTLM –Uses encrypted exchange between IE Browser and Server –Used in Intranet scenarios –Used by Web Server Only if anonymous access is disabled or Anonymous access has been denied through Windows File System Permissions

More Windows Authentication Methods Certificates –Client certificate is passed to the web server –IIS maps certificate to user account Anonymous authentication –When you don’t need to authenticate users or –When you use a custom authorization scheme –Web server creates an access token Represents all anonymous users with (guest) account IUSR_MACHINENAME

Integrated Windows Authentication Uses integrated Windows NT and XP authentication to authenticate web users Advantage –Uses same security scheme as your corporate network –Names, passwords, and permissions are the same –Users on corporate intranet don’t have to login to website - automatic Disadvantage –Only for Internet Explorer –Users on corporate network using a proxy connection can’t use –Every user must have a password on Web Server or Domain controller trusted by the Web server.

Configuring Windows Authentication - Web.config file <!-- AUTHENTICATION This section sets the authentication policies of the application. Possible modes are "Windows", "Forms", "Passport" and "None" "None" No authentication is performed. "Windows" IIS performs authentication (Basic, Digest, or Integrated Windows) according to its settings for the application. Anonymous access must be disabled in IIS. "Forms" You provide a custom form (Web page) for users to enter their credentials, and then you authenticate them in your application. A user credential token is stored in a cookie. "Passport" Authentication is performed via a centralized authentication service provided by Microsoft that offers a single logon and core profile services for member sites. -->

Allowing or Denying Access to Certain Users Authorize/Deny list set in Web.config file “*” – All “?” – Unauthenticated Users Comma-separated names – format: domain\username

Role-based Authorization Allows users based on role in organization Windows – Computer Management –Administrators –Users –Guests See roles/groups in Start | Control Panel | Administrative Tools | Computer Management | Local Users and Groups

Role-Based Authorization – web.config

User Object, Identity Property User.Identity available after authentication and authorization Returns name and role information Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'Put user code to initialize the page here spnAuthenticated.InnerText = User.Identity.IsAuthenticated spnUserName.InnerText = User.Identity.Name SPNAUTHENTICATIONTYPE.InnerText = User.Identity.AuthenticationType End Sub If User.IsInRole("Administrators") Then ' Do something End If

IIS and Web.config Overlap Security settings may overlap Most restrictive applies Setting security in IIS IIS > Rt-Click on Web Site > Properties > Directory Security Tab > Anonymous Access and Authentication Control Section > Edit Best practice: allow IIS to control password on anonymous account Basic and Digest Authentication – less restrictive

Impersonation After Authentication and Authorization –Web app runs under ASPNET user account (by default) – demo –Limited user account Impersonation – allows user to run in context of his/her own account Use web.config to set identity element to enable impersonation -- or --

Folder-level Impersonation Impersonates a specific user account Can be used with Forms and Passport Authentication $ <identity impersonate="true" username="Administrator" password="O#thip32x" />

Forms Authentication Lesson 3

Reference for ASP.NET Security

Providing Secure Communication Chapter 8 Lesson 5

I’d like to send some sensitive data across the web! But I don’t want just anyone to be able to read it! IIS provides: Standard means for encrypting and decrypting Both Web requests and responses Requires: Server Certificate (Encryption Key) Issued by: Independent 3 rd Party (Certificate Authority)

Secure Sockets Layer Standard means for ensuring data can’t be read by others. Overview:

Using SSL Request authorization from recognized certificate authority Server Certificate Install certificate in IIS (identifies your server) Server certificates are licensed (for a fee), but you can get one for testing purposes Certificate Authority acts as clearinghouse Identifies your server’s identity over the Internet

Using Secure Communications Browser Web Server Requests Server Certificate Returns Server Certificate Certificate Authority (CA) Check against list of trusted sites Web address registered with certificate? Anything wrong with certificate? Response from CA CA provides encryption Assures users your web site is authentic

Warnings from Browser

IIS on Web Server I need a certificate I can help! 1. Use IIS to generate a certificate request. Certificate Request Certificate Authority (CA) 2. Request Certificate from CA IIS on Web Server 3. Install certificate on Server 4. Install certificate on Browser (test certificate) 5. Use Secure Hypertext Transfer Protocol (HTTPS) in your web pages Certificat e Installed!