APIを使ったログイン
FCCへのAPIによるログイン方法
ログインに使用できるAPIエンドポイントは複数存在します。ここで説明するログインAPIは、/loginです。auth/forceLoginのように、ユーザーがすでにログインしていた場合、古いセッションを終了させて強制的にログインさせるものなど、さまざまなものがあります。
Swagger API を使用するためには、xserver.properties でxserver.swagger.enable=true
を必ず設定してください。
リクエストを作成するには、https://my-address/loginのように、/login への POST コールを作成します。呼び出しのJSONボディは次のようになるはずです。
{
"username":"myuser",
"password":"qwer1234",
"domain":"ubimax",
"agreedToTos":"true"
}
ここでは、ユーザー名、パスワード、ドメインを指定します。この後、リクエストを実行することができます。
返ってくる応答は次のようになります。
{
"token": "eyJhbGciOiJIUzUxMiJ9.eyJpc3MiOiJGQ0MiLCJzdWIiOiJ0ZXN0ZXIiLCJkb21haW4iOiJ1YmltYXgiLCJpZCI6MTYyOTI4NDQ0ODg0OSwiaWF0IjoxNjI5Mjg0NDQ4LCJleHAiOjE2MjkyODQ3NDh9.9qhH0Jpf-xtzPa5Gu3CUt89dVag-8obzV-dNYsGojs_GNdfSfcM_iJ4rA01-Wg7Gr3LQfRkjtLhC95AHLmtc5A",
"refreshToken": "eyJhbGciOiJIUzUxMiJ9.eyJpc3MiOiJGQ0MiLCJzdWIiOiJ0ZXN0ZXIiLCJkb21haW4iOiJ1YmltYXgiLCJpYXQiOjE2MjkyODQ0NDgsImV4cCI6MTYyOTg4OTI0OH0.-L38U0FsXHhOJCxWus4kXEezSm6tcZ3u2nKzhZX9C_0ZqyRrscG7sDNWsP8gUREeNRrXpvA1YAUqamQRQb8_QA",
"permissions": [
"ROLE_adm_administration",
...
]
}
以下のAPIコールでは、Bearer Tokenとして受け取ったトークンをAuthorizationとして使用することができるようになりました。
利用可能なAPIコールの概要を知るには、https://my-address/admin.html#!/apisをご覧ください。
ここでは、すべてのAPIコールが、実行に必要なデータとともにリストアップされており、試すこともできます。これは、/loginのAPI記述になります。
ここでは、例として以下に定義されている usernamePasswordLoginModel が期待されていることがわかります。今フィールドを埋めて、リクエストを実行すると。結果はこのようになります。
その結果、リクエストを送ったURLとcurlコマンドが表示されます。