Nextcloudのアプリ「Social Login」を使用して、Discordアカウントでログインする方法を紹介します。
アプリインストール
Nextcloudのアプリ管理ページを開き、「ソーシャル・コミュニケーション」より「Social Login」を探します。
検索ボックスに入力して見つけることも可能です。
これをダウンロードして有効化します。
ログインの設定
Discordの設定
「Discord Developer Portal」より新規アプリケーションを作成します。
右上の「New Applcation」ボタンより、名前を決めて「Create」ボタンを押下します。
作成したら、左側メニューの「OAuth2」メニューの「General」画面に移動します。
Client information
「Client information」の「CLIENT ID」「CLIENT SECRET」を控えておいてください。
後者は、「Reset Secret」ボタンを押して取得できます。
作成したらそれ以降は確認できませんので、メモ帳などにコピー&ペーストをしておきましょう。
Redirects
「Add Redirect」を押し、以下のテンプレートに基づいて入力し、「Save Changes」ボタンを押してください。
- https://{Nextcloudのインストールドメイン}/index.php/apps/sociallogin/oauth/discord
もし、「domain.example.com/files/」にインストールしている場合は、これを {Nextcloudのインストールドメイン} に当てはめてください。
Nextcloudの設定
設定ページより、「管理」セクションの「Social Login」メニューを選択します。
チェックボックス類
これはそれぞれの好みでどうぞ。
OAuth2情報を入力
先ほど控えた情報を、Nextcloud側に設定します。
以下のように設定してください。
- Default group
新規ユーザー登録をDiscordで行った場合に、この設定されたグループがセットされます。 - Allow login only for specified guilds
ここにIDをセットしたサーバーに入っていないDiscordアカウントは、ユーザー登録やログインが出来なくなります。
複数のサーバーIDをカンマで区切る事が可能。
設定が終わったら保存も忘れずに!
アカウントをDiscordと紐づける
これは、先ほどのチェックボックスの「Allow users to connect social logins with their account」をオンにしていないと使えません。
Nextcloud設定画面の「個人」セクションの「Social Login」メニューから、Discordのボタンを押します。
Discordの認証画面より「Authorize」ボタンを押せば完了です!お疲れ様でした。
ログアウトし、Discordでログインできることを確認しましょう。