NEAR-Edu / near-certification-tools

2 stars 2 forks source link

Allow other groups to issue certificates #61

Open ryancwalsh opened 2 years ago

ryancwalsh commented 2 years ago

How can we allow other groups (NEAR Hispano, Dacade, Learn NEAR Club, and regional hubs like Balkans) to issue certificates using our system?

E.g. maybe we want them to have their own key and they can sign into a wallet and issue certs from their own authority.

Sherif says we should offer this in 2022 Q2 or Q3.

Will Patika Bootcamp be able to offer NCD certs? https://discord.com/channels/@me/975787058666819615/975787085464223815

encody commented 2 years ago

The way the certification contract is set up right now, they would have to deploy their own version of the contract. We can alter it to allow the owner to add "approved certifiers" or something like that.

ryancwalsh commented 2 years ago

@encody We might end up having you alter it in that way. Or maybe we'll just do it web2-style with each group just getting their own API key that works with our endpoint. The web3 way might be more fun + interesting + educational, though.

encody commented 2 years ago

@ryancwalsh I'd like to do a bit of dogfooding and use the ownership and/or RBAC patterns from near-contract-tools.

Since this issue in particular is focusing on adding roles, I wonder if maintaining two different types of permission systems makes sense (those being single account ownership and role-based access control).

If we abandon the ownership model entirely, the only thing that would be missing outright would be the owner_id function. It doesn't appear that this function is currently being used, so I think we should be fine removing it.

ryancwalsh commented 2 years ago

@encody Yeah I do want us to develop reusable libraries / standards / helpers whenever possible and then use them whenever we can.

And I haven't given this part of the project much attention yet, but you'll be taking the lead on it anyway since you're more comfortable with Rust and these patterns, and I'll speak up whenever I have input to share.

But yeah before you start with too much coding, I do think we should clarify the actual requirements of what we want to build, which I think will involve meeting with people in the various other groups (NEAR Hispano, Dacade, Learn NEAR Club, etc), which might require some introductions from Sherif first.

If you have capacity to ask Sherif and start those conversations, go for it, and I'll join in. Otherwise we can get to this soon.

encody commented 2 years ago

Proof-of-concept in #69

ryancwalsh commented 2 years ago

Shashi suggested enabling us to issue certs for hackathons too: https://discord.com/channels/828768337978195969/906115083250307103/977208631609155654