There two stage about data protection. These stages are transit (as it travels to and from Amazon S3) and storage(while it is stored on Amazon S3 infrastructure). As a best practice, all sensitive data stored in Amazon S3 should be encrypted, both at storage and in transit.

For protecting the data in transit, developers can use Amazon S3 SSL API endpoints. For data stored on Amazon S3 infrastructure, developers can encrypt it using different options of Server-Side Encryption (SSE).


In this article we will talk about how to hide sensitive information with the help of lambda. If you have a dynamic developer team, you probably want to hide your sensitive information likewise db passwords, api keys, username password for 3rd party API’s. Managing these properties in the code brings several problems to the team. Malicious usage and code duplications are the first two that come to mind. Using the lambda for these calls is really advantageous.

Easy to change links, passwords, keys…

For example there is a table and you use it from different applications. If you will change anything about that table like column…


12 days ago lambda would provide deployment option that supports a zip archive of application code or binaries to developer but now we can deploy container images. This means that you can deploy a custom Docker or OCI image as an AWS Lambda function.

There are 2 ways for deploying images. One of them is using AWS image options with pre-installed runtimes. These base images will be patched and maintained by AWS. Currently, the runtimes supported include dotnetcore2.1, dotnetcore3.1, go1.x, java8, java8.al2, java11, nodejs12.x, nodejs10.x, python3.8, python3.7, python3.6, python2.7, ruby2.5, ruby2.7, provided.al2, and provided. Developers can also provide their own…


Today, we will design simple system that contains some aws services likewise sqs, dynamodb and lambda, which provides us receiving data from any clients and saving it to dynamodb. Here is a short summary.

First, we will push message to sqs. Then lambda will be triggered and read message from sqs. Finally lambda will save message to DynamoDB. But first we will talk about event source mappings before the project. An event source mapping is an AWS Lambda resource that reads from an event source and invokes a Lambda function. …


We will talk about aws cdk on this article. It is really important service for cloud developers because it is hard to manage all services in the aws but with the aws cdk development teams can easily configure their services.

What is AWS CDK

AWS cloud development kit is a framework that is used for defining cloud infrastructure in code. It is based on Infrastructure as Code (IAC) standards that enable developers to maintain their cloud infrastructure in a repeatable and predictable manner.

Create The App

In this part we will talk about how to create our first app and AWS CDK Toolkit command-line tool.

cdk init…


In the previous article we talked about download file from server using java and grpc. We assumed that client knows file location and name. In this part we will examine that get available file names from server.

Proto

we add new service that name is “getAvailableFiles”. In this part there are 2 important points. One of them is “google.protobuf.Empty”. Actually we want to just send empty request and waiting for String list. In the proto syntax we provide list structure with stream keyword.

rpc getAvailableFiles(google.protobuf.Empty) returns (stream FileName);message FileName {
string fileName = 1;
}

Server

In the server side we…


We will tell about how to transfer any file from server to client using java and grpc in this article.

Simple Project Implementation

I used https://start.spring.io/ for create a new project using the following dependencies:

  • Spring Web
  • Lombok

Configure The Project

We will investigate our pom.xml file that contains basic libraries.

<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <!-- gRPC Dependencies --> <dependency> <groupId>io.grpc</groupId> <artifactId>grpc-netty</artifactId> <version>1.16.1</version> </dependency> <dependency> <groupId>io.grpc</groupId> <artifactId>grpc-protobuf</artifactId> <version>1.16.1</version> </dependency> <dependency> <groupId>io.grpc</groupId> <artifactId>grpc-stub</artifactId> <version>1.16.1</version> </dependency> <!-- grpc-spring-boot-starter --> <dependency> <groupId>io.github.lognet</groupId> <artifactId>grpc-spring-boot-starter</artifactId> <version>3.1.0</version> </dependency> </dependencies>…

Münir Karslı

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store