Following the sample Google KMS implementation:
1. Clone and configure the sample
_10git clone https://github.com/openfort-xyz/samples_10cd external-kms-game
Copy the .env.example file into a file named .env in the folder of the server you want to use. For example:
_10cp .env.example .env
You will need an Openfort account in order to run the demo. Once you set up your account, go to the Openfort developer dashboard to find your API keys.
2. Create a Player, Policy and Contract
You can create Policies and add Contracts in the Dashboard or with the API. This sample requires a Policy and a Contract to run. Once you've created them, and add its ID to your
OPENFORT_PLAYER is the ID of a Player for your player.
OPENFORT_CONTRACT is the ID of a Contract for your contract. A contract has a chainId.
If you need a test contract address, use 0x38090d1636069c0ff1Af6bc1737Fb996B7f63AC0 (NFT contract deployed in 80001 Mumbai).
OPENFORT_POLICY is the ID of a Policy for your contract. A policy has a contract and chainId. For this demo to work, the policy must have both the contract and the register sessions as rules.
3. Provide the KMS information In our example, we use Google Cloud Platform's KMS. In order to be able to use this sample, you will need to provide the details of the key to use:
_14# Address of the PK stored in the Key of the KMS below_14EXTERNAL_OWNER_ADDRESS=_14_14# KMS info_14# Your project id in GCP_14PROJECTID=_14# The location where your key ring was created_14LOCATIONID=_14# The id of the key ring_14KEYRINGID=_14# The name/id of your key in the key ring (the addres of this PK should be the EXTERNAL_OWNER_ADDRESS above)_14KEYID=_14# The version of the key_14KEYVERSION=
4. Follow the server instructions on how to run
Install & Run:
_10npm install_10npm run dev_10# or_10yarn_10yarn dev