About this product: Product Description Building on the success of its storefront and fulfillment services, Amazon now allows businesses to "rent" computing power, data storage and bandwidth on its vast network platform. This book demonstrates how developers working with small- to mid-sized companies can take advantage of Amazon Web Services (AWS) such as the Simple Storage Service (S3), Elastic Compute Cloud (EC2), Simple Queue Service (SQS), Flexible Payments Service (FPS), and SimpleDB to build web-scale business applications. With AWS, Amazon offers a new paradigm for IT infrastructure: use what you need, as you need it, and pay as you go. Programming Web Services explains how you can access Amazon's open APIs to store and run applications, rather than spend precious time and resources building your own. With this book, you'll learn all the technical details you need to: Store and retrieve any amount of data using application servers, unlimited data storage, and bandwidth with the Amazon S3 service Buy computing time using Amazon EC2's interface to requisition machines, load them with an application environment, manage access permissions, and run your image using as many or few systems as needed Use Amazon's web-scale messaging infrastructure to store messages as they travel between computers with Amazon SQS Leverage the Amazon FPS service to structure payment instructions and allow the movement of money between any two entities, humans or computers Create and store multiple data sets, query your data easily, and return the results using Amazon SimpleDB. Scale up or down at a moment's notice, using these services to employ as much time and space as you need Whether you're starting a new online business, need to ramp upexisting services, or require an offsite backup for your home, Programming Web Services gives you the background and the practical knowledge you need to start using AWS. Other books explain how to build web services. This book teaches businesses how to take make use of existing services from an established technology leader.
Create HTML POST Forms That Allow Your Web Site Visitors to Upload Files Into Your S3 Account Using a Standard Web Browser By James Murty, creator of the JetS3t Java S3 library and author of Programming Amazon Web Services
Amazon’s Simple Storage Service (S3) provides cheap and unlimited online data storage for anyone with a credit card and an Amazon Web Service (AWS) account. If you have an AWS account, you can interact with the S3 service using specialized tools to upload and manage your files. It is very convenient to have access to this online storage resource for yourself, but there may be situations where you would like to allow others to upload files into your account.
For this purpose, S3 accepts uploads via specially-crafted and pre-authorized HTML POST forms. You can include these forms in any web page to allow your web site visitors to send you files using nothing more than a standard web browser.
In this article, I will demonstrate how to build simple S3 POST forms. I will assume that you have already signed up for the S3 service, and that you have an S3 client program for creating buckets and viewing files in your account. Before you proceed, create your own bucket to store uploaded files — in the examples below I will use a bucket named s3-bucket.
POST Form Web Page
Here is a web page with an S3 POST Form that you can use as a template for your own forms:
S3 POST Form >
This template demonstrates some important features of an S3 POST form, and the web page that contains it:
The web page that contains the form has a meta tag in the head section that tells web browsers to use the UTF-8 unicode character encoding.
The form’s action parameter specifies an S3 URL that includes the name of your destination bucket, in this case the bucket called s3-bucket.
The form contains a number of input fields with parameter names and values that will be sent to the S3 service. If any required input fields are missing, or if a field has an incorrect value, the service will not accept uploads from the form.
The S3 service uses information from the form’s input fields to authorize uploads, and to set the properties of uploaded file objects. Here is a description of the most common input fields:
Field Name
Description
key
A name for the S3 object that will store the uploaded file’s data. This name can be set in advance when you know what information the user will upload, for example: uploads/monthly_report.txt.
If you do not know the name of the file a user will upload, the key value can include the special variable ${filename} which will be replaced with the name of the uploaded file. For example, the key value uploads/${filename} will become the object name uploads/Birthday Cake.jpg if the user uploads a file called Birthday Cake.jpg.
AWSAccessKeyId
The Access Key Identifier credential for your Amazon Web Service account.
acl
The access control policy to apply to the uploaded file. If you do not want the uploaded file to be made available to the general public, you should use the value private. To make the uploaded file publicly available, use the value public-read.
success_action_redirect
The URL address to which the user’s web browser will be redirected after the file is uploaded. This URL should point to a “Successful Upload” page on your web site, so you can inform your users that their files have been accepted. S3 will add bucket, key and etag parameters to this URL value to inform your web application of the location and hash value of the uploaded file.
policy
A Base64-encoded policy document that applies rules to file uploads sent by the S3 POST form. This document is used to authorize the form, and to impose conditions on the files that can be uploaded. Policy documents will be described in more detail below.
signature
A signature value that authorizes the form and proves that only you could have created it. This value is calculated by signing the Base64-encoded policy document with your AWS Secret Key, a process that I will demonstrate below.
Content-Type
The content type (mime type) that will be applied to the uploaded file, for example image/jpeg for JPEG picture files. If you do not know what type of file a user will upload, you can either prompt the user to provide the appropriate content type, or write browser scripting code that will automatically set this value based on the file’s name.
If you do not set the content type with this field, S3 will use the default value application/octet-stream which may prevent some web browsers from being able to display the file properly.
file
The input field that allows a user to select a file to upload. This field must be the last one in the form, as any fields below it are ignored by S3.
This overview of the form’s input fields should help you to modify the template POST form to suit your own purposes. At a minimum, you will need to edit the form’s action parameter to point to your own S3 bucket, and set the value of the AWSAccessKeyId field to your AWS Access Key credential.
To complete the form and make it acceptable to the S3 service, you will also need to generate a policy document and signature value.
Policy Document
S3 POST forms include a policy document that authorizes the form and imposes limits on the files that can be uploaded. When S3 receives a file via a POST form, it will check the policy document and signature to confirm that the form was created by someone who is allowed to store files in the target S3 account.
A policy document is a collection of properties expressed in JavaScript Object Notation, which simply means that the document’s structure and content must conform to a certain format. Every policy document contains two top-level items:
expiration - A Greenwich Mean Time (GMT) timestamp that specifies when the policy document will expire. Once a policy document has expired, the upload form will no longer work.
conditions - A set of rules to define the values that may be included in the form’s input fields, and to impose size limits for file uploads.
Here is a policy document corresponding to the POST form template above. This policy has an expiration date of January 1st 2009:
To create a valid S3 POST form, you must include a policy document whose conditions section contains a rule for almost every input field in the form. At a minimum, this document must include rules for the bucket and key values of the uploaded file object. In addition to these two rules, you will need to include a rule for every other input field in the form except for AWSAccessKeyId, signature, policy and file.
Because our template POST form includes the input fields acl, success_action_redirect, and Content-Type, our policy document includes rules corresponding to these fields. Our policy document also includes an extra content-length-range rule that limits the size of files that can be uploaded.
There are three kinds of rules you can apply in your policy document:
Equality rule, which checks that an input field’s value is set to a given string. An equality rule is expressed as a name and value pair within brace characters, for example: {"acl": "private"}
Starts-With rule, which checks that an input field’s value begins with a given string. If the given string is empty, S3 will check only that the field is present in the form and will not care what value it contains. A starts-with rule is expressed as a three-element array that contains the term starts-with, followed by the name of the input field preceded by a $ symbol, then the prefix string value for comparison. In the policy document above, we use starts-with rules for the key and Content-Type fields because we do not know in advance the name of the file a user will upload, or what type of file it will be. The rule for the Content-Type field uses an empty string for comparison, which means it will permit any content type value. The rule for the object’s key name uses the prefix string “upload/”, which means that the key value must always start with the upload/ subdirectory path.
Content length rule, which checks that the size of an uploaded file is between a given minimum and maximum value. If this rule is not included in a policy document, users will be able to upload files of any size up to the 5GB limit imposed by S3. A content length rule is expressed as a three-element array that contains the term content-length-range, followed by integer values to set the minimum and maximum file size. The policy document above includes a content length rule that will prevent the form from uploading files larger than 1MB in size (1,048,576 bytes).
It is important to make sure that your policy document corresponds exactly to your S3 POST form. If there are any discrepancies between the input field values in your form and the rule values in your policy document, or if your form contains input fields that do not have corresponding rules in your policy, the S3 service will reject the form and return an incomprehensible XML error message to your users.
Sign Your S3 POST Form
To complete your S3 POST form, you must sign it to prove to S3 that you actually created the form. If you do not sign the form properly, or if someone else tries to modify your form after it has been signed, the service will be unable to authorize it and will reject the upload.
To sign your form you need to perform two steps:
Base64-encode the policy document, and include it in the form’s policy input field.
Calculate a signature value (SHA-1 HMAC) from the encoded policy document using your AWS Secret Key credential as a password. Include this value in the form’s signature input field after Base64-encoding it.
Almost all programming languages include libraries for performing these two steps. Here are some example code fragments to do the job with different languages, assuming you have already defined the variables policy_document and aws_secret_key.
Once you have calculated the values for the policy and signature input fields and included these values in your form, the form should be complete. Save the web page and form document as an .html file, open it in your favorite web browser, and test it by uploading some files to your S3 bucket.
Conclusion
The form web page and policy document templates in this article should give you a starting point for creating your own upload forms. With some minor modifications to the template documents and a little coding, you will be able to create authorized forms that make it easy for your web site visitors to upload files to your S3 account.
The S3 service’s POST support is a powerful feature with many potential uses. You could create a single upload form to allow your friends and colleagues to send you files that are too large for email, or you could modify your web applications to generate forms on-demand so your users can store their data in S3 rather than on your own server. Just remember that you will be liable for any S3 data transfer and storage fees incurred by the people who use your forms.
About this product: "This book will not only demonstrate how developers can utilize Amazon Web services to create cool mashups but will also help them convert it to money-making mashups - 'cashups.'" —Jinesh Varia, Amazon Web Services Developer Relations Team
Amazon.com is advancing the boundaries of the Internet through their powerful suite of web services. Innovative developers are combining Amazon data with other freely available sources to create new and interesting applications known as Mashups. This book teaches you the techniques behind mashup applications and for the first time shows you how to build them yourself.
The examples in this book show you how to integrate Amazon web services with APIs from Yahoo!, eBay, Google and YouTube. You'll learn how to combine data from disparate sources to create new applications using next generation browser techniques such as AJAX, JSON and Dynamic Scripting. You will learn how to re-purpose web service data so that it can be consumed from mobile devices such as a cell phone or PDA. Because both the theory and code are explained, you'll be able to easily take the lessons in this book to build your own killer mashup applications.
Expert web services developer Francis Shanahan guides you through the basics of web service consumption using XML, SOAP and REST. Next generation browser techniques such as AJAX are illustrated in easy to follow step by step examples. He also completes the picture by introducing advanced techniques to enhance performance such as the multi-threading web service features of ASP.NET 2.0.
With this book, you'll discover how to:
Build a generic AJAX library from the ground up
Consume publicly available APIs such as Yahoo!(r) Search, Google(r), eBay(r) and YouTube
Use SOAP to expose Amazon data as RSS
Convert Amazon data directly into JSON using XSLT
Plot Amazon.com customers on Yahoo Maps
Use the OpenSearch API to build your own search service
Access Amazon data from your cell phone using WML
Who this book is for
This book is for developers who have some prior experience with web technologies such as Javascript(r) and ASP.NET. This book covers a wide range of technologies and techniques including ASP.NET 2.0, WML, REST, RSS, SOAP, XML, XSLT, AJAX and JSON. Everything in the book is built using free tools and explained in detail, along with the source code which makes this a useful resource regardless of experience level.
About this product: Hundreds of thousands of customers have joined the Amazon Web Services™ community in order to build solutions for their businesses. The AWS cloud computing platform provides the flexibility to build your application, your way, regardless of your use case or industry. You can save time, money, and the difficulties of managing your own infrastructure, without compromising on scalability, security, or dependability.
The types of solutions customers have built include Application Hosting, Backup and Storage, Content Delivery, E-Commerce, High Performance Computing, Media Hosting, On-Demand Workforce, Search Engines and Web Hosting.
This book covers AMazon Web Services'comprehensive cloud computing platform and what it means for your business:
Amazon Web Services is more than a collection of infrastructure services. With the same pay as you go pricing, you can save time by incorporating identity, payment, database, messaging, and other services that will give you a head start on delivering for your business. All AWS services are priced on a pay as you go model, with no up front expenses or long-term commitments.
- Amazon Elastic Compute Cloud (Amazon EC2™) - A web service that provides resizable compute capacity in the cloud. Configure an Amazon Machine Instance (AMI) and load it into the Amazon EC2 service. Quickly scale capacity, both up and down, as your computing requirements change.
- Amazon Simple Storage Service (Amazon S3™) - A simple web services interface that can be used to store and retrieve large amounts of data, at any time, from anywhere on the web. It gives any developer access to the same highly scalable, reliable, fast, inexpensive data storage infrastructure that Amazon uses to run its own global network of web sites.
- Amazon SimpleDB™ - A web service for running queries on structured data in real time. This service works in close conjunction with Amazon Simple Storage Service (Amazon S3) and Amazon Elastic Compute Cloud (Amazon EC2), collectively providing the ability to store, process and query data sets in the cloud. Amazon SimpleDB is easy to use and provides the core functionality of a database-real-time lookup and simple querying of structured data-without the operational complexity.
- Amazon Simple Queue Service (Amazon SQS™) - A reliable, highly scalable, hosted queue for storing messages as they travel between computers. By using Amazon SQS, developers can simply move data between distributed components of their applications that perform different tasks, without losing messages or requiring each component to be always available.
About this product: This digital document is a journal article from DNA Repair, published by Elsevier in 2007. The article is delivered in HTML format and is available in your Amazon.com Media Library immediately after purchase. You can view it with any web browser.
Description: Human ribosomal protein S3 (hS3) has a high apparent binding affinity for the oxidative lesion 7,8-dihydro-8-oxoguanine (8-oxoG). The hS3 ribosomal protein has also been found to inhibit the base excision repair (BER) enzyme hOGG1 from liberating 8-oxoG residing in a 5'-end-labeled oligonucleotide. To understand the in vivo involvement of hS3 in BER, we have turned to RNA interference to generate knockdown of hS3 in cells exposed to DNA damaging agents. Here we show that a 40% knockdown of hS3 resulted in as much as a seven-fold increase in the 24h survival-rate of HEK293 cells exposed to hydrogen peroxide. Significant protection to the alkylating agent methyl methanesulfonate (MMS) was also observed. Protection to the chemotherapeutic alkylating agent Thio-TEPA was only revealed at longer exposure times where the agent became more toxic to untransfected human cells. Overall, these results raise the possibility that hS3 interferes with the repair of the DNA lesions produced by genotoxic agents that potentially could play a role in the onset of cancer and other pathological states such as aging.
About this product: Cloud computing is already a significant force in modern computing, and is drawing particular interest as a way to set up a web-based company quickly while saving money and administrative headaches. There are many competing clouds services, but all of them raise legitimate fears and questions among web site managers and programmers. They hope to cut costs radically by using the cloud, but worry about security, reliability, and the ability to predict load and capacity. This book directly addresses those questions and provides practical planning and strategies. Author George Reese is a pioneer in the area of building transactional web applications, specializing in Amazon's services. Drawing on his experience setting up sites for many clients, he explains the differences between traditional server hosting and using cloud services. He then provides practical guidelines for key decisions and planning required of system administrators, system architects, and application designers, including: hardware, software, and administrative costs; application architecture; creating and cloning machine images; licensing issues and considerations in using open source software; types of storage, reliability, and availability; backups and disaster recovery; performance, scaling, capacity planning, and service Level Agreements (SLAs); security, encryption, and regulatory issues; database clustering and replication; server monitoring; planning the use of both Windows and open-source applications; and examples of procedures using Amazon cloud services, with some coverage of Windows Azure.
About this product: This digital document is an article from EDP Weekly's IT Monitor, published by Millin Publishing, Inc. on July 12, 2004. The length of the article is 752 words. The page length shown above is based on a typical 300-word page. The article is delivered in HTML format and is available in your Amazon.com Digital Locker immediately after purchase. You can view it with any web browser.
Citation Details Title: S3's invention discovers errors in communications network billing systems.(database analysis software) Publication:EDP Weekly's IT Monitor (Magazine/Journal) Date: July 12, 2004 Publisher: Millin Publishing, Inc. Volume: 45 Issue: 27 Page: 6
About this product: This book/eBook package is your guide to getting more interesting and creative photos with the 6 megapixel 12x zoom Canon PowerShot S3 IS. (The book also has links to 50 or so animations BUT you need broadband Internet access to play them. They will not play over a dial-up connection.) If you want to learn more about the concepts of photography, this book/ebook is for you. It discusses every camera setting on this amazing camera in a clear, well-illustrated style, but it also does much more. You'll see why and when you use specific settings, not just how to set them. You ll find that this guide helps you quickly master your camera so you ll be getting the kinds of photos you hope for. The book is printed in black & white and has a well-liked spiral binding that lets the book lie flat or be folded back. The accompanying eBook on a CD disc is a printable and searchable full-color version of the same book in Adobe's popular PDF format. It can be read on a PC or Mac using the free Acrobat Reader or any current Web browser. Just some of the things you'll learn are how to take pictures in fully automatic point and shoot mode and how your camera captures digital images; how to play back and manage your images; use buttons, dials, and menus; control image size and quality; shoot continuously, use all of the camera s exposure modes and exposure controls to get photos that show the scene exactly as it is, or as you want to interpret it; using histograms and the RAW format for the highest possible quality; how to control sharpness in your photographs; and how to use focus, depth-of-field, sharpness, softness, and blur creatively. Learn all about light and color and how to use them creatively. Understand how they change throughout the day and seasons, how they re affected by the weather, and how light s direction and quality affects highlights and shadows. See how to set white balance to capture colors the way you see them. Learn how to use lenses creatively when photographing
About this product: Along with the corporate world, health care organizations are embracing Six Sigma methodology as a means to achieve efficiency and effectiveness in quality. With increasing cost constraints and human resource shortages, laboratories, blood banks, transfusion services, and cellular therapy and tissue facilities must focus on the streamlining of processes in order to gain effectiveness in day-to-day operations.
S3: Simple Six Sigma, written in the spirit of Introducing the Big Q (AABB Press, 2004), translates a complicated subject into a readily accessible one for those familiar with basic quality issues. This book offers a foundational focus for the quality professional with an interest in taking on a Six Sigma Green Belt role or for those in executive positions who would like to better understand the potential impact of the Six Sigma methodology on their operations. S3 can be used by Black Belts as teaching text for members of the Six Sigma team.
Topics include:
The DMAIC cycle. Tools of Six Sigma. Team development and Six Sigma roles. Process mapping, measurement and capability. Root cause analysis. Hypothesis testing. Design of experiments. Control plans. Dealing with failure.
About this product: The goal of this report is to assist managers in gauging a company's financial performance vis--vis firms competing in the same sector, at the global level. In particular, this report covers S3 INC., SANTA CLARA, USA.
With the globalization of markets, greater foreign competition, and the reduction of entry barriers, it becomes all the more important to benchmark a company's performance against other firms on a worldwide basis. Doing so, however, is not an obvious task. First, one needs to find firms competing in the same sector. Second, one needs to control for exchange rate volatility. Finally, one needs use comparable financial standards. This report overcomes these issues and gives full financial benchmarks vis--vis worldwide competitors who are present in the same narrow industrial classification. Benchmarks cover assets, liabilities, income and ratios. Since our reports are printed on demand, the figures available are for the latest quarter and are the most up to date available (4 reports are produced each year).
About this product: This book is designed for human resources managers and directors of personnel who are concerned with labor productivity. It gives benchmarks and gap analyses used to gauge a company's performance vis--vis firms competing firms in the same sector, at the global level. In particular, this report covers CISCO SYSTEMS, INC., SAN JOSE, USA. With the globalization of markets, greater foreign competition, and the reduction of entry barriers, it becomes all the more important to benchmark a company's performance against other firms on a worldwide basis. Doing so, however, is not an obvious task. First, one needs to find firms competing in the same sector. Second, one needs to control for exchange rate volatility. Finally, one needs use comparable financial standards. This report overcomes these issues and gives full human resources benchmarks vis--vis worldwide competitors who are present in the same narrow industrial classification. Benchmarks cover labor-asset ratios, labor-liability ratios, and labor-income ratios. Since our reports are printed on demand, the figures available are for the latest quarter and are the most up to date available (4 updates are produced each year).