|||
-|-|-|
| 概要 | DiscourseでSign-In with Ethereumを有効にする
![]()
- | 元のリポジトリ | GitHub - spruceid/discourse-siwe-auth: Discourse plugin for SIWE authentication
| 動作中のリポジトリ | GitHub - communiteq/discourse-siwe-auth: Discourse plugin for SIWE authentication
| インストールガイド | Discourseでプラグインをインストールする方法
機能
このプラグインは、DiscourseでSign-In with Ethereumを有効にします。
設定
要件
- 自己ホスト型のDiscourseフォーラム、またはCommuniteqのようなサードパーティ製プラグインを許可するプロバイダーでホストされているもの。
注意
Sign-In with Ethereumプラグインでは、初回認証後にアカウントと関連付けるためのメールアドレスの入力が引き続き必要です。ユーザーがENSアドレスを所有している場合、それがデフォルトで選択されたユーザー名になります。メールアドレスが関連付けられると、ユーザーはいつでもSIWEオプションを使用してサインインできるようになります。
プラグインの有効化
自己ホスト型Discourseでプラグインをインストールして有効にするには、次の方法を使用します。コンテナのapp.ymlファイル(/var/discourse/ にあります)にアクセスします。
cd /var/discourse
nano containers/app.yml
プラグインのリポジトリURLをコンテナのapp.ymlファイルに追加します。
hooks:
before_code: # <-- 追加
- exec: # <-- 追加
cmd: # <-- 追加
- gem install rubyzip # <-- 追加
after_code:
- exec:
cd: $home/plugins
cmd:
- sudo -E -u discourse git clone https://github.com/discourse/docker_manager.git
- sudo -E -u discourse git clone https://github.com/spruceid/discourse-siwe-auth.git # <-- 追加
docker_manager.git行の既存の形式に従ってください。sudo -E -u discourseが含まれていない場合は、- git clone https://github.com/spruceid/discourse-siwe-auth.gitを挿入してください。
コンテナを再構築します。
cd /var/discourse
./launcher rebuild app
無効にするには、プラグインを削除するか、(Admin Settings → Plugins → discourse-siwe → discourse siwe enabled)でdiscourse siwe enabledのチェックを外します。
WalletConnectの有効化
WalletConnectサポートはInfura経由で提供できます。新しいInfuraプロジェクトを作成して、新しいInfuraプロジェクトIDを取得します。次に、設定(上記と同じ)に移動し、その場所にIDを貼り付けて、チェックマークをクリックします。 
JSON RPC
または、以下に示すように、WalletConnectインスタンスをJSON RPCエンドポイントで構成することもできます。
これにより、WalletConnect専用のInfura ID構成オプションが上書きされます。Infura IDの他の用途には影響しません。
メッセージステートメントの編集
デフォルトでは、メッセージに「Sign-in to Discourse via Ethereum.」というステートメントが追加されます。このステートメントを編集するには、設定(上記と同じ)にアクセスして更新します。 


