mirror of
https://iceshrimp.dev/Crimekillz/jointrashposs.git
synced 2024-11-25 10:19:07 +01:00
76 lines
3.2 KiB
Markdown
76 lines
3.2 KiB
Markdown
|
---
|
||
|
description: v12.27.0以降で使用できる、Misskey独自の簡素な認証方法について説明しています。
|
||
|
---
|
||
|
|
||
|
# MiAuth方式でのアクセストークン取得方式
|
||
|
|
||
|
アプリケーションを利用するユーザー(以下単に「ユーザー」と呼びます)のアクセストークンを取得するには、以下の手順で発行をリクエストします。
|
||
|
|
||
|
:::tip
|
||
|
|
||
|
以下に説明する方法は、アプリを作成せずインスタントにアクセストークンを発行する、MiAuthと呼ばれるものです。
|
||
|
|
||
|
- [よりおおく使われているOAuth方式でのアクセストークン取得方法もあります。](./oauth.md)
|
||
|
- [アプリ作成方式でのアクセストークン取得方法もあります(旧来型)。](./app.md)
|
||
|
:::
|
||
|
|
||
|
## Step 1
|
||
|
|
||
|
UUIDを生成する。以後これを**セッションID**と呼びます。
|
||
|
|
||
|
:::danger
|
||
|
|
||
|
このセッションIDは毎回生成し、使いまわさないようにしてください。
|
||
|
|
||
|
:::
|
||
|
|
||
|
## Step 2
|
||
|
|
||
|
アプリケーション認証フォームをユーザーのブラウザで表示させる。認証フォームは、以下の形式のURLで開くことができます:
|
||
|
|
||
|
```
|
||
|
https://{host}/miauth/{session}
|
||
|
```
|
||
|
|
||
|
ここで、
|
||
|
|
||
|
- `{host}`の部分は、ユーザーのサーバーのホストに置き換えます。通常ホストはユーザーが入力します。
|
||
|
- `{session}`の部分は、セッションIDに置き換えます。
|
||
|
|
||
|
また、URLにクエリパラメータとしていくつかのオプションを設定できます:
|
||
|
|
||
|
| 名前 | 説明 |
|
||
|
| ------------ | ----------------------------------------------------------------------------- |
|
||
|
| `name` | アプリケーション名。 |
|
||
|
| `icon` | アプリケーションのアイコン画像URL。 |
|
||
|
| `callback` | 認証が終わった後にリダイレクトするURL。<br>リダイレクト時には、`session`というクエリパラメータでセッションIDが付きます。 |
|
||
|
| `permission` | アプリケーションが要求する権限。<br>要求する権限を`,`で区切って列挙します。権限の一覧は[こちら](./permission.md)で確認できます。 |
|
||
|
|
||
|
:::tip{label='例'}
|
||
|
|
||
|
```
|
||
|
https://misskey.io/miauth/c1f6d42b-468b-4fd2-8274-e58abdedef6f?name=MyApp&callback=https%3A%2F%2Fmyapp.example.com%2Fcallback&permission=write:notes,write:following,read:drive
|
||
|
```
|
||
|
|
||
|
:::
|
||
|
|
||
|
## Step 3
|
||
|
|
||
|
ユーザーがアプリケーションアクセスを許可した後、次の形式のURLにPOSTリクエストすると、レスポンスとしてアクセストークンを含むJSONが返ります。
|
||
|
|
||
|
```
|
||
|
https://{host}/api/miauth/{session}/check
|
||
|
```
|
||
|
|
||
|
ここで、
|
||
|
|
||
|
- `{host}`の部分は、ユーザーのサーバーのホストに置き換えます。
|
||
|
- `{session}`の部分は、セッションIDに置き換えます。
|
||
|
|
||
|
レスポンスに含まれるプロパティは以下の通りです:
|
||
|
|
||
|
| 名前 | 説明 |
|
||
|
| ------- | -------------- |
|
||
|
| `token` | ユーザーのアクセストークン。 |
|
||
|
| `user` | ユーザーの情報。 |
|