oceanprotocol-archive / bounties

🎣 Bounties for Ocean Protocol
Apache License 2.0
11 stars 0 forks source link

Ocean Bounty : AWS Integration with Ocean Protocol's Pleuston #4

Closed innopreneur closed 5 years ago

innopreneur commented 5 years ago

AWS Integration with Ocean Protocol's Pleuston

How can you help?

We are looking to integrate Amazon Web Services (AWS) with our frontend application (Pleuston). What we need you is to implement AWS api functions in our ES6 wrapper class.

Note - You need to implement only those functions that are declared in this ES6 class. There are some functions to store and retrieve tokens that are generic and should be directly used from parent/super class and doesn’t need to be duplicated in AWS class.

What needs to be done?

We are very happy when

Note - PR for this bounty submission should go in this repo - https://github.com/oceanprotocol/cloud-storage-providers

Seen this problem before?

Any help solving this is welcome. Feel free to leave any comments and help someone else to solve it. We might airdrop tokens to someone even if not directly completing bounty.

Questions & Reviews

Pull requests will be reviewed by one of the maintainers or long-term contributors. In case of any additional questions feel free to ask in this thread and we will do our best to add the missing info :)

Things to know

The bounty lifecycle process including payout will be managed using Gitcoin. We'll be responding to your questions here, but for discussion and clarification we recommend to join also our Gitter channel where our tech community is accessible. In order to see the PROCN balance in your wallet you'll need to reference the related token contract with address 0xf2aabdd898a0139195b2b5da7387d43a45ded254. If you use a Metamask plugin you'll find the the exact steps here.

Reward

This bounty is valued at 4000 PROCN tokens. Once the project was reviewed and merged in the master branch, you will receive the reward. PROCN is a proto-Ocean token. Bounty hunters that earn PROCN will be able to convert them 1:1 to Ocean tokens on network launch (currently Ocean Token is valued at 0.20 EUR). Network launch is expected to happen by Mar 31, 2019. Until then PROCN will be locked and non-transferrable in the ETH wallet to which it is delivered to.

chalidbdb commented 5 years ago

Published on Gitcoin: https://gitcoin.co/issue/oceanprotocol/ocean-bounties/4/1668

gitcoinbot commented 5 years ago

Issue Status: 1. Open 2. Started 3. Submitted 4. Done


Work has been started.

These users each claimed they can complete the work by 3 years, 1 month ago. Please review their action plans below:

1) aknuds1 has been approved to start work.

After investigating the issue and speaking with Ocean Protocol contributors (@innopreneur and @Anirudh2490 on Gitter), I've come to the conclusion that it can't be solved through OAuth as AWS doesn't have any facilities for this. Instead one should most likely use a combination of the Cognito AWS service and the AWS JavaScript SDK for authenticating users.

I've got to the point of being able to run Pleuston locally (with Docker Compose), so I can experiment with using the AWS SDK for authenticating instead of using Azure.

Learn more on the Gitcoin Issue Details page.

mlundela commented 5 years ago

Are files stored in S3?

innopreneur commented 5 years ago

Are files stored in S3?

@mlundela - yes its S3 bucket

mlundela commented 5 years ago

Accessing AWS resources from a front end application would require you configure an AWS Cognito Identity Pool to accept logins from one or more login providers. See docs for details.

In order to implement the authorize method, you will have to provide more details on your authentication flow.

jernejpregelj commented 5 years ago

We are currently using Azures AD https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-implicit-grant-flow for Oauth. Ideally we want similar flow with AWS. You can check Azure implementation at https://github.com/oceanprotocol/pleuston/blob/develop/src/components/asset/CloudStorageActions.js

innopreneur commented 5 years ago

@mlundela Did this help clear your understanding? And could you also join our gitter channel. There seems to be similar conversation going on there.

innopreneur commented 5 years ago

@mlundela Seems like there are some questions regarding what to use for AWS (Cognito or not) integration. Let me explain our flow in a simpler terms -

This is the flow we want to achieve. So, choose the best approach that can achieve this. Or if you have any alternate approach that can allow Pleuston to access user data (without involving backend) please mention that, we might be okay with alternate apporach as well.

svenski123 commented 5 years ago

The Amazon rabbit hole is rather deeper than I expected however I did come across this URL which perhaps may be of some help:

https://web-identity-federation-playground.s3.amazonaws.com/index.html

gitcoinbot commented 5 years ago

Issue Status: 1. Open 2. Started 3. Submitted 4. Done


Work for 4000.0 PROCN has been submitted by:

  1. @aknuds1

@chalidbdb please take a look at the submitted work:


gitcoinbot commented 5 years ago

Issue Status: 1. Open 2. Cancelled


The funding of 4000.0 PROCN attached to this issue has been cancelled by the bounty submitter

gitcoinbot commented 5 years ago

⚡️ A tip worth 2800.00000 PROCN has been granted to @aknuds1 for this issue from @chalidbdb. ⚡️

Nice work @aknuds1! To redeem your tip, login to Gitcoin at https://gitcoin.co/explorer and select 'Claim Tip' from dropdown menu in the top right, or check your email for a link to the tip redemption page.