Secured-SaaS-Wallet/WalletSample
Elad Iwanir ed76e71153 First version 2018-06-12 23:52:31 +03:00
..
Deployment First version 2018-06-12 23:52:31 +03:00
TransactionEngine First version 2018-06-12 23:52:31 +03:00
WalletApp First version 2018-06-12 23:52:31 +03:00
WalletSF First version 2018-06-12 23:52:31 +03:00
images First version 2018-06-12 23:52:31 +03:00
README.md First version 2018-06-12 23:52:31 +03:00

README.md

Sample

Sample Diagram

Sample architecture diagram

Installation instructions

The following instructions will help you get started with a working SaaS wallet deployed on Azure.

Prerequisites

  1. An Azure subscription id
  2. Setup an Azure Active Directory application
  3. Prepare the Service principal id and secret and assign it to a contributor role
  4. An Azure Active Directory TenantId - Same link as step 3
  5. Prepare the Azure Service principal object id
    1. Go to the azure portal
    2. Go to Azure Active Directory -> Enterprise Applications -> All applications.
    3. Filter for your recently created application. One of the columns is 'Object Id'.
    4. Copy this value for later use.
  6. Install Azure Powershell SDK
  7. Install Service Fabric SDK for Visual Studio

Deploy resources

  1. Edit the parameters in the file WalletSample/Deployment/oneclick.ps1
  2. Open the Powershell console (As administrator) and navigate to the file's location.
  3. run .\oneclick.ps1
    1. The script will create a resource group and deploy different resources into it. Some of the resources are Azure Service Fabric cluster, storage accounts, KeyVaults, Azure SQL, etc...

The script will take a few minutes to finish. Once done:

  1. Go to certificates folder (c:\saaswalletcertificates if left the certificate folder location as is), a pfx file will be present. Install it under 'Local User' (the password was specified in the script earlier)
  2. Open up the solution in Visual Studio (As administrator)
  3. Update cloud.xml with the Service Fabric cluster name, cluster location and the certificate thumbprint (needed for deploying the application to the cluster) - the detalis can be found in the powershell script output.
  4. Update appsettings.json and App.config file with the 'EthereumNodeUrl' value
  1. Open Visual Studio, Load the solution, Right click on the 'WalletService', click publish, choose the newly created Service Fabric cluster
  2. Once done, navigate to http://<SFClusterName>.<location>.cloudapp.azure.com/

Usage

  1. Create a new account Creating a new account for identifier 'MSFT_BLOCKCHAIN'
  2. Seed the account with ethereum coins: https://faucet.rinkeby.io/ Seeding the 'MSFT_BLOCKCHAIN' account with a few coins
  3. Transfer funds to another (already created account) Tranfer funds to another address
  4. Press the 'Get balance' button Get the current balance