AWS Architect

 50 Minutes
 26 Questions


This test checks candidates' knowledge of key AWS services, confirming they're skilled in setting up, managing, and maintaining scalable systems. Key areas include: AWS Basics: Essential ideas and structures. ECR (Elastic Container Registry): Handling container images. IAM (Identity and Access Management): Rules for user and access control. Lambda: Managing serverless applications. DynamoDB: Operations and backup in NoSQL databases. Route 53: Managing DNS services and health checks. CloudFront: Optimizing content delivery and security. CloudWatch: Overseeing cloud resources and analyzing logs. Cognito: Managing user authentication and security. RDS (Relational Database Service): Handling relational databases and recovery methods. Candidates need a strong grasp of these services, showing they're prepared for detailed AWS engineering tasks.


Example Question:

Multiple-Choice
You are maintaining a web application where content is stored in an S3 bucket and delivered by CloudFront. You need to ensure that only users who have authenticated via your company's authentication service can access the content. You decide to implement a signed URL solution.



Which of the following code snippets correctly generates a signed URL for AWS CloudFront content?



A.
//javascript
const AWS = require('aws-sdk');
const cloudFront = new AWS.CloudFront();


const params = {
 DistributionId: 'E1A2B3C4D5E',
 PrivateKey: 'privateKey.pem',
 KeyPairId: 'APKAJCEOKRHC3XIVU5NA',
 Url: 'https://d111111abcdef8.cloudfront.net/my-object',
 Expires: 180 // time in seconds
};


cloudFront.getSignedUrl(params, function(err, data) {
 if (err) console.log(err);
 else console.log(data);
});



B.
//javascript
const AWS = require('aws-sdk');
const cloudFront = new AWS.CloudFront.Signer('APKAJCEOKRHC3XIVU5NA', 'privateKey.pem');


const options = {
 url: 'https://d111111abcdef8.cloudfront.net/my-object',
 expires: Math.floor((new Date().getTime() / 1000) + 180) // Current time + 3 minutes (in Unix time)
};


cloudFront.getSignedUrl(options, function(err, url) {
 if (err) console.log(err);
 else console.log(url);
});





C.
//javascript
const AWS = require('aws-sdk');
const cloudFront = new AWS.CloudFront();


const params = {
 Bucket: 'my-bucket',
 Key: 'my-object',
 Expires: 180,
 ACL: 'authenticated-read'
};


cloudFront.createPresignedPost(params, function(err, data) {
 if (err) console.log(err);
 else console.log(data);
});



D.
//javascript
const AWS = require('aws-sdk');
const s3 = new AWS.S3();
const url = s3.getSignedUrl('getObject', {
 Bucket: 'my-bucket',
 Key: 'my-object',
 Expires: 180
});


console.log(url);