How to configure SteemConnect v2 and use it with your application. How it works and how it is different from v1.

configuration.jpg

What is SteemConnect?

Probably you are familiar with a possibility of logging to different websites with Facebook, that is Facebook Connect. This not only confirm your identity, but also enables you to grant requested permissions to your account.

SteemConnect do similar thing for your Steem account. This is not only convenient, but also extremely useful, because 3rd party developers do not need to implement own storing passwords mechanism (what can be screwed up in so many ways...).

Steem Connect vs. Steem Connect v2

From now on I will call them SC1 and SC2. Let's explore the differences:

Endpoints

You need to know, that both versions are working.

You need to be aware of this fact, to make sure, that you will always refer to proper endpoints.

Different architecture

There is a big change in architecture. SC1 stores encrypted version of your private keys in a cookie, SC2 do not need to do that!

SC2 is using "multi-authority" feature to have a possibility of voting/posting/etc from your account without a password or a key. You just need to authorize a dedicated and app-specific account.

For example, if you will go to https://steemd.com/@noisy2, you will see:


Selection_082.png

As you can see, I authorized 2 accounts ( @steemprojectsapp, @busy.app) to use posting privileges of my @noisy2 account. Similar account needs to be created by a developer of new application.

How to setup dedicated app account on Steem Connect v2

Let's first....

Create an dedicated app account

  1. Login to https://v2.steemconnect.com/dashboard
  2. Go to Developers > My Apps
    Selection_087.png
  3. Click "New App"
    Selection_088.png
  4. Choose a name for an account. Right now unofficial convention is, that if your application is called: super-abc, then try to reserve a name super-abc.app
    Selection_091.png
  5. Your account will be created:
    Selection_102.png

Configuration

Of course it is important to fill in all inputs like App name, App Description, etc, but to have a possibility to test steemconnect, you need to make sure, that Redirect URI(s) input contain proper value.

In that case I want to have a possibility to use SC2 with my application running on:

  • localhost:8000 - to test everything before deployment
  • social-auth-steemconnect-demo.krzysztofszumny.pl - to use this on the production environment

Selection_125.png

Two additional addresses (127.0.0.1, 0.0.0.0) were added for convenience of debugging.

If you are using python-social-auth-steemconnect, then both addresses should end with /complete/steemconnect/, unless you configure it differently. In case of different/custom integration, you need to specify proper (probably different) endpoint.

SteemConnect v2 integration with your app

Your application can be written in any language and framework. There is demo application written in JavaScript, with Angular: https://sc2-angular.herokuapp.com/ but... if you want to write your service in python, then you can use prepared by my:

Introducing python-social-auth-steemconnect

This article was written for all developers, but I wanted to publish it before I will publish an announcement about developed by my Python Social Auth library. I believe, that all information in this article will be very helpful for every reader of the announcement.

Before going to next article, please make sure, that you upvoted/resteemed this post, if you think it deserve it. I am also encouraging you to follow me, because really soon I will publish my next project called: SteemProjects :)

H2
H3
H4
Upload from PC
Video gallery
3 columns
2 columns
1 column
36 Comments