Provides infrastructure layer compute capabilities, including both bare metal and virtual servers with various optimizations includins compute, memory, IO, and disk. Also supports accelerations options such as GPUs, FPGAs, Inferentia and Trainium.
Provides image recognition capability for images (in batch or real-time) and video that provides a analysis of the content such as real-world objects, faces, celebrities, and path mapping.
Provides a publish/subscribe notification service with multiple subscription types including Amazon Simple Queue Service (SQS), Amazon Kinesis Data Firehose, AWS Lambda, generic HTTPS endpoints, SMS and email.
A serverless, fully-managed, message queue service that supports producing, store, and consuming messages and enables loose coupling between applications.
Provides private networking capability spanning multiple availability zones and supporting subnets, routing, network access control groups, security groups and gateways.
Provides tracing of service invocations in distributed applications for observability, allowing users to diagnose issues or optimize their service interactions.
All about Cloud, mostly about Amazon Web Services (AWS)
How does Qwiklabs Provision Accounts?
2017-05-08 / 431 words / 3 minutes
I’ve used QwikLabs several times now. AWS Training uses it for hands-on exercises and the Bootcamps at Re:Invent. I’ve used some of their free introductory labs on AWS services which are worth investigating and some of the paid labs as preparation for AWS certifications. When you use QwikLabs, you are given an account number and credentials allowing you to login to an account but how do they do that? This post explains one approach.
QwikLabs was working long before AWS Organizations were available though, and there is no way to delete accounts using the AWS Organizations API. AWS Accounts must still be deleted manually. There were a few ideas about how it worked.
Was QwikLabs doing Screen Scraping?
The manual process for creating AWS Accounts basically consisted of filling out some web pages and responding to an email. With some programming to simulate a web browser and monitoring an email account, the manual process could be automated.
This idea was soon discarded because first, that whole process takes a while, and QwikLabs provides these accounts quite quickly, and second, techniques like captchas are used to prevent automation.
Was QwikLabs using a secret API?
There wasn’t a public interface to create AWS Accounts, but maybe there was a secret API. Amazon may have given QwikLabs a way to create AWS Accounts programmatically that was not generally available.
Knowing what we do now about AWS Organizations, there almost certainly was a secret API available for some customers before the general announcement. This wasn’t how QwikLabs worked though.
So how does QwikLabs Provision Accounts?
During one of the AWS Training labs, I tried to find out how account was setup. I checked CloudFormation to check for deployed templates, but no CloudFormation templates were visible. I then changed the options to display deleted CloudFormation templates.
Not only did the CloudFormation template for the current lab appear in the list, but many, many other templates also appeared. These deleted templates were used in the past to create lots of other labs.
It appears that QwikLabs had a pool of pre-defined accounts. CloudFormation built out the necessary resources for the lab, then cleaned up the resources afterwards.
This technique is largely irrelevant now with the AWS Organizations API. Although a simple API call now creates real accounts from scratch, it was interesting to learn how to do it without using AWS Organizations.
All data and information provided on this site is for informational
purposes only. cloudninja.cloud makes no representations as to accuracy,
completeness, currentness, suitability, or validity of any information
on this site and will not be liable for any errors, omissions, or
delays in this information or any losses, injuries, or damages
arising from its display or use. All information is provided on an
as-is basis.
This is a personal weblog. The opinions expressed here represent my
own and not those of my employer. My opinions may change over time.