Skip to content

This is the official open source project for OpenDKP. This repository is dedicated to the server side setup, specifically AWS Lambdas which communicate with the Client application

License

Notifications You must be signed in to change notification settings

ebm5025/OpenDKPLambdas

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OpenDKP - AWS Lambdas

OpenDKP was developed over the course of several months as a passion project of mine. My primary goal was exposure to Amazon Web Services, as many components as I could. It started off as a simple AngularJS ap hosted in an S3 bucket, then grew to becoming a full fledged application with middle tier and backend provided by API Gateway and Lambdas.

I've always been a huge fan of .NET and this was also a great opportunity to work with .NET Core within the AWS environment.

Disclaimer

Please do not leverage the source code you find in this repository as a standard or best practice. This was primarily a learning experience for integration into AWS and the overall design is piece meal over a long period of time. Given the opportunity to rebuild, as many engineers would say, I'd do things totally different!

Much refactoring is needed and any contributions are much appreciated

AWS Components

The following AWS components are required to be setup within your AWS account in order for these Lambdas to function appropriately

  • API Gateway - You'll need to setup APIs pointing to each lambda
  • RDS - I used a MySQL Micro RDS instance, the dbContext is within this source code for the structure of the DB
  • IAM - You'll need the appropriate Identity & Access Management roles setup
  • Cognito - Cognito handles our Users & Authorization
    • Both UserPool & Federated Identity Providers will have to be setup
    • DKP_ADMIN usergroup needs to be created as part of the UserPool for Administrators
    • DKP_ADMIN must have a valid IAM role assigned to it for lambda execution

AWS API Gateway Installation

  • Visit the ReadMe file in ./apigateway-exports directory

AWS RDS Instance Setup/Config

  • Visit the README.ME file in ./database-schema directory

AWS Lambda Installation/Publishing

# clone the repo
$ git clone https://github.com/Moncleared/OpenDKPLambdas.git

Open the OpenDKPLambdas.sln file with Visual Studio 201X

I personally use AWS Toolkit for Visual Studio 2017, this allows you to right click and publish Lambdas directly from VS. Alternatively, the ideal situation would be to create a build pipeline that upon commit builds and publishes lambdas for you.

Usage

Each Project represents one or more lambdas that should be published

Documentation

Documentation will be developed and provided over time.

Contributing

If you are interested in contributing back to this project, feel free to create pull requests. They will be reviwed and merged accordingly.

Creators

Moncleared (aka Moncs)

Community

Get updates on CoreUI's development and chat with the project maintainers and community members.

Support OpenDKP Development

If you would like to show your support, you can with PayPal, however, it is absolutely not required.

About

This is the official open source project for OpenDKP. This repository is dedicated to the server side setup, specifically AWS Lambdas which communicate with the Client application

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 93.4%
  • TSQL 6.6%