10/20/2015 ©2006 Scott Miller, University of Victoria 1 User Authentication Content Generation The Use of Cookies Content Pooling Rev 1.5.

Slides:



Advertisements
Similar presentations
Lecture 6/2/12. Forms and PHP The PHP $_GET and $_POST variables are used to retrieve information from forms, like user input When dealing with HTML forms.
Advertisements

DT228/3 Web Development WWW and Client server model.
Session 13 Active Server Pages (ASP) Matakuliah: M0114/Web Based Programming Tahun: 2005 Versi: 5.
DT211/3 Internet Application Development JSP: Processing User input.
Servlets and a little bit of Web Services Russell Beale.
Extras Plus! Pepper. Objectives extra knowledge Cookies Picture handling when creating site.
11 SUPPORTING LOCAL USERS AND GROUPS Chapter 3. Chapter 3: Supporting Local Users and Groups2 SUPPORTING LOCAL USERS AND GROUPS  Explain the difference.
DT211/3 Internet Development Application Internet Development Application.
Introduction To Windows NT ® Server And Internet Information Server.
ASP.NET 2.0 Chapter 6 Securing the ASP.NET Application.
Session Management A290/A590, Fall /25/2014.
Chapter 10 Maintaining State Information Using Cookies.
COMPUTER TERMS PART 1. COOKIE A cookie is a small amount of data generated by a website and saved by your web browser. Its purpose is to remember information.
Designing Security In Web Applications Andrew Tomkowiak 10/8/2013 UW-Platteville Software Engineering Department
How It Applies In A Virtual World
 A cookie is a piece of text that a Web server can store on a user's hard disk.  Cookie data is simply name-value pairs stored on your hard disk by.
Overview of JSP Technology. The need of JSP With servlets, it is easy to – Read form data – Read HTTP request headers – Set HTTP status codes and response.
.Net Security and Performance -has security slowed down the application By Krishnan Ganesh Madras.
CSCI 6962: Server-side Design and Programming Course Introduction and Overview.
Session 11: Security with ASP.NET
Class 8Intro to Databases Authentication and Security Note: What we discuss in class today covers moderate to low security. Before you involve yourself.
CHAPTER 12 COOKIES AND SESSIONS. INTRO HTTP is a stateless technology Each page rendered by a browser is unrelated to other pages – even if they are from.
1 CS 3870/CS 5870 Static and Dynamic Web Pages ASP.NET and IIS.
Comp2513 Forms and CGI Server Applications Daniel L. Silver, Ph.D.
CSC 2720 Building Web Applications Cookies, URL-Rewriting, Hidden Fields and Session Management.
JavaScript, Fourth Edition
© All rights reserved. Zend Technologies, Inc. PHP Security Kevin Schroeder Zend Technologies.
CSE 154 LECTURE 12: COOKIES. Including files: include include("filename"); PHP include("header.html"); include("shared-code.php"); PHP inserts the entire.
1 Accelerated Web Development Course JavaScript and Client side programming Day 2 Rich Roth On The Net
 Cookie is small information stored in text file on user’s hard drive by web server.  This information is later used by web browser to retrieve information.
Web Programming Language Week 7 Dr. Ken Cosh Security, Sessions & Cookies.
Chapter 8 Cookies And Security JavaScript, Third Edition.
10/13/2015 ©2006 Scott Miller, University of Victoria 1 Content Serving Static vs. Dynamic Content Web Servers Server Flow Control Rev. 2.0.
12/3/2012ISC329 Isabelle Bichindaritz1 PHP and MySQL Advanced Features.
Week seven CIT 354 Internet II. 2 Objectives Database_Driven User Authentication Using Cookies Session Basics Summary Homework and Project 2.
10/20/2015 ©2006 Scott Miller, University of Victoria 1 Alternative Content Distribution Methods Non-CGI/SSI Content Serving.
Chapter 6 Server-side Programming: Java Servlets
Cookies Web Browser and Server use HTTP protocol to communicate and HTTP is a stateless protocol. But for a commercial website it is required to maintain.
All Input is Evil (Part 1) Introduction Will not cover everything Healthy level of paranoia Use my DVD Swap Shop application (week 2)
Forms and Server Side Includes. What are Forms? Forms are used to get user input We’ve all used them before. For example, ever had to sign up for courses.
By Sean Rose and Erik Hazzard.  SQL Injection is a technique that exploits security weaknesses of the database layer of an application in order to gain.
Cookies and Sessions IDIA 618 Fall 2014 Bridget M. Blodgett.
HTML Form Widgets. Review: HTML Forms HTML forms are used to create web pages that accept user input Forms allow the user to communicate information back.
Cookies Bill Chu. © Bei-Tseng Chu Aug 2000 Definition A cookie is a TEXT object of max 4KB sent from a web server to a browser It is intended for the.
 Registry itself is easy and straightforward in implementation  The objects of registry are actually complicated to store and manage  Objects of Registry.
Web Security Lesson Summary ●Overview of Web and security vulnerabilities ●Cross Site Scripting ●Cross Site Request Forgery ●SQL Injection.
8 Chapter Eight Server-side Scripts. 8 Chapter Objectives Create dynamic Web pages that retrieve and display database data using Active Server Pages Process.
Chapter 4- Part3. 2 Implementing User Profiles A local user profile is automatically created at the local computer when you log on with an account for.
1 State and Session Management HTTP is a stateless protocol – it has no memory of prior connections and cannot distinguish one request from another. The.
© Copyright 2009 SSLPost 01. © Copyright 2009 SSLPost 02 a recipient is sent an encrypted that contains data specific to that recipient the data.
Web Browsing *TAKE NOTES*. Millions of people browse the Web every day for research, shopping, job duties and entertainment. Installing a web browser.
Web Technologies Lecture 6 State preservation. Motivation How to keep user data while navigating on a website? – Authenticate only once – Store wish list.
Sessions and cookies (part 2) MIS 3501, Fall 2015 Brad N Greenwood, PhD Department of MIS Fox School of Business Temple University 11/19/2015.
COOKIES AND SESSIONS.
PHP: Further Skills 02 By Trevor Adams. Topics covered Persistence What is it? Why do we need it? Basic Persistence Hidden form fields Query strings Cookies.
Brief Look InTo JavaScript Dr. Thomas Hicks Computer Science Department Trinity University.
1 Chapter 1 INTRODUCTION TO WEB. 2 Objectives In this chapter, you will: Become familiar with the architecture of the World Wide Web Learn about communication.
Tonga Institute of Higher Education IT 141: Information Systems
Configuring Windows Firewall with Advanced Security
Chapter 2: System Structures
Sessions and cookies (part 2)
Web Programming Language
Security.
What is Cookie? Cookie is small information stored in text file on user’s hard drive by web server. This information is later used by web browser to retrieve.
Web Systems Development (CSC-215)
Chapter 27 WWW and HTTP.
Tonga Institute of Higher Education IT 141: Information Systems
Tonga Institute of Higher Education IT 141: Information Systems
Security.
Web Programming Language
Presentation transcript:

10/20/2015 ©2006 Scott Miller, University of Victoria 1 User Authentication Content Generation The Use of Cookies Content Pooling Rev 1.5

 Generally uses forms, CGI (or similar application), DB, cookies  Form: Enter user ID/password  CGI: Connect to DB to process login  DB: Holds user ID/password pairs (and optionally settings, etc.)  Cookies: Keeps track of session (keeps this user “connected”)  Secure Sockets Layer (SSL) is used to keep information secure  Uses encrypted “secret” key data to ensure only the specific client can understand the data being sent from the server and vice versa 10/20/2015 ©2006 Scott Miller, University of Victoria 2

10/20/2015 ©2006 Scott Miller, University of Victoria 3 SMTP

 Soft/Hard Lockouts  Soft: After a few unsuccessful attempts, the user is temporarily locked out. Usually a warning is sent to the user before and at the lockout  Hard: After a set amount of unsuccessful attempts, the user is “permanently” locked out. No warnings are sent to avoid “brute force” attacks  Enforce “strong” passwords  Definition of strong varies with source.  Use numbers, capital and lowercase letters, punctuation or ascii characters, use 8+(or 10+) characters 10/20/2015 ©2006 Scott Miller, University of Victoria 4

 Heuristic monitoring  Statistical monitoring of user activity; alert system admins when “odd” activity occurs  “Live” login protection  No scripts to reset usernames/passwords  Must authenticate with live help desk to login  Usually a step in hard lockout protection  Be aware of most current security issues, and permissions/holes  Simple knowledge of what limitations in certain SW exist can help plug security holes 10/20/2015 ©2006 Scott Miller, University of Victoria 5

 Know your goals!  All CG methods are based on trade-offs  e.x. CGI: slow, but adequate for smaller sites SSI: limited, but better P/C JSP: Good combination of both, but VERY slow on first compile – more complicated PHP: Good support for DB, P/C, only good to about 20 users (scripting: interpretation slow) 10/20/2015 ©2006 Scott Miller, University of Victoria 6

 Performance  Based on needs, cost, maintenance projections  API vs. Full Custom  Parse and Dispatch example  ONLY for SERIOUS web traffic  Heavily rely on DB  Be familiar with DB (SQL, for example) to be able to make calls to generate content  Remember: Content doesn’t consist of products, searches and logins  Web based P2P applications  Media Streaming  Etc. 10/20/2015 ©2006 Scott Miller, University of Victoria 7

 What do I probably bore you all the most with?  STATE!  Cookies maintain “state”*  Cookies can be used in many ways  Send many cookies to maintain lots of user info  Send a unique key for a session and store all the user’s info/history/commands on the server side  Send client side information and have the client generate user data to send as cookies to the server (ex. with JavaScript or complex client-side forms)  Be creative! * If you don’t know this, I may cry at this point. Please don’t make me cry! 10/20/2015 ©2006 Scott Miller, University of Victoria 8

 Long-term vs. session based  SSL, encryption, probability  Hash based  Single hash can be stolen  Extra “hidden” information could help – hard to implement  Visibility  HTTP is text based  Realms = paths: Remember how to assign security to each different application/resource you are running 10/20/2015 ©2006 Scott Miller, University of Victoria 9

 Cookies were used as original spy-ware  Large pages keep track of all searches, web history to sell to marketing corporations  Targeted banner ads  Banner payout protection  Targeted searches to save actual processing or bandwidth  Old Infoseek : Attempt to use your browsing habits (heuristics) to predict future searches  Very limiting on “true” searching  Same principle as marketeering 10/20/2015 ©2006 Scott Miller, University of Victoria 10

 Used for integrating and swapping content with other sites, domains or applications  Sites/Domains: Used to retrieve fresh content  Partner sites  Media  Applications: Share content between different applications, local domains, etc.  Can be used to make sites more efficient 10/20/2015 ©2006 Scott Miller, University of Victoria 11

 Can use one large database for many different web applications  Pool content of different applications/local sites to save space, individual calls  Can break content “workload” into smaller slices and dynamically call running slices  Pool same database by smaller running pieces  Can distribute or centralize workload  Have 1 database for logins to multiple applications on 1 site  Have each different slice of a database on a different server (CPU load distribution): Share all content as if in same DB 10/20/2015 ©2006 Scott Miller, University of Victoria 12

 Cookies:  If you want to have a cookie deleted or ignored, you can do the following:  Add a cookie the regular way with response.addCookie(Cookie)  Set the Cookie to delete in the following way  Cookie deleteme = new Cookie (“name”, “”);  deleteme.setMaxAge(0);  response.addCookie(deleteme); 10/20/2015 ©2006 Scott Miller, University of Victoria 13

 Practice your content for the course  Look over code  Look over theory  Understand the system (1 system) we’ve gone over the entire semestre!  Work on Assignment 3 and Lab 5/6!  NEXT CLASS: Databases 10/20/2015 ©2006 Scott Miller, University of Victoria 14