ファイル箱のAPIは、2つの認証方法を対応しております。
- 一般ユーザ向けのOAuth
- リセラー向けのAPIキー
OAuth認証
ファイル箱は、OAuth 2.0/OpenID Connect 1.0を利用しています。OAuthにて取得したアクセストークンを使えば、ユーザがアクセスを持つ全ての操作を行えます。
OAuthの認可コードフロー(Authorization Code flow)とリソースオーナー・パスワード・クレデンシャルズフロー(Resource Owner Password Credentials flow)を対応します。OAuthクライアントの登録について、弊社のサポートにご連絡ください。2つのフローは、OpenID Connectの基本的な実装になります。OpenID Connect認証サーバの詳細は、標準の /.well-known/openid-configuration URLで確認できます。
https://domainauth.cloudfile.jp/.well-known/openid-configuration
認可コードフローを使う際、一般OAuthで任意パラメータacr_valuesは必須です。acr_valuesでは、次の情報が入ります:
- deviceName - 必須
- deviceOs - 必須
- deviceType - 必須:0 - PC, 1 - Androidのタブレット, 2 - Androidの携帯, 3 - iPhone, 4 - iPad, 5 - iPadMine, 6 - Windowsの携帯, 7 - Windowsのタブレット, 9 - Webクライアント, 10 - Mac, 11 - iPadMini
- latitude - 任意
- longitude - 任意
例として、東京であるWindows 11のPC(DESKTOP-XYZ123) で起動しているアプリケーションがRushFilesにログインしたい場合、arc_valuesは次になるべきです:
deviceName:DESKTOP-XYZ123 deviceOs:Windows11 deviceType:0 latitude:35.689722 longitude:139.692222
デバイスの情報及びクライアントの位置は、ログインのログで表示されます。
※注意:リソースオーナー・パスワード・クレデンシャルズフローのセキュリティは、一般的に認可コードフローより低いため、ブラウザにてユーザーとのやり取りが出来ないケースでしか使わないでください。
APIキー
APIキー認証は、リセラーだけ、リセラーコントロールパネルの範囲の操作だけ出来ます。リセラーのAPIキーは、リセラーの管理画面から確認可能です。
取得したAPIキーをリクエストのAuthorizationヘッダで渡します: ApiKey <APIキー>。例えば、APIキーで、リセラーの会社を読み取るリクエスト(GET /api/resellers/{resellerId}/companies):
curl -X GET "https://clientgateway.cloudfile.jp/api/resellers/2bda4a3c70bf4b069cb0f03f283c1ce1/companies" -H "accept: application/json" -H "Authorization: ApiKey NDJiMDcxOWYtNDUxNy00YTI0LTg4NzYtZDI3NjkzZTc5ZDIx"