Skip to main content

2-1 認証

アクセストークンの取得

SVF Cloudにアクセスするためのアクセストークンを取得します。

アクセストークンの取得には、SVF Cloud Managerで作成したクライアント認証情報の以下の情報を使用します。クライアント認証情報の作成手順は『SVF Cloud 管理ガイド』の「クライアント認証情報を作成したい」を参照してください。

  • クライアントID

    clientIDの値に指定

  • シークレット

    secretの値に指定

  • PKCS8フォーマット秘密鍵

    秘密鍵ファイルのファイル名を含んだパスを、keyFileの値に指定

1. エンドポイントのURI
https://api.svfcloud.com/oauth2/token


2. HTTPメソッド

POST



3. HTTPリクエストのContent-Typeヘッダー

application/x-www-form-urlencoded



4. パラメーター
  • リクエストボディ

    リクエストボディのデータ

    必須

    説明

    grant_type

    urn:ietf:params:oauth:grant-type:jwt-bearer

    maru.png

    assertion

    JWTベアラートークン

    maru.png

    JWTベアラートークンを作成する」を参照してください。

  • リクエストヘッダー

    ヘッダーフィールド

    説明

    Authorization

    Basic {base64 encoded clientID:secret}

    clientIdとsecretを結合し、Base64でエンコードした結果を指定します。



レスポンス

コード

説明

HTTP/1.1 200 OK

正常に処理が実行されたことを意味します。

HTTP/1.1 401 Unauthorized

認証情報が不正な場合に発生します。

HTTP/1.1 403 Forbidden

実行権限がない場合に発生します。

HTTP/1.1 429 Too many Requests

APIコール数が閾値を超えた場合に発生します。レスポンスヘッダーの「Retry-After」に返された値の秒数経過後に、再度実行してください。

HTTP/1.1 503 Service Unavailable

有効なサービスプランまたはポイントが存在しない場合に発生します。

5. 出力例(JSON形式)
{"token":"fa074d728eef1bfb1da897de1f64b53dae7857e87dd0b8b96d9f65e06da43e9f","expiration":1442046911540}

キー

内容

説明

token

アクセストークン

SVF Cloud WebAPIを利用するためのアクセストークンです。APIの呼び出しの際にリクエストヘッダーに付与します。

expiration

有効期限

アクセストークンの有効期限(UTCで測定された1970-01-01T0:0:0Zからの秒数)です。期限を過ぎると、アクセストークンは無効となり、再度認証が必要になります。成果物のダウンロードなど比較的時間のかかる処理を実行する際は、処理中に有効期限切れにならないように、残存期間を確認し、場合によっては再取得しておくことをお勧めします。



JWTベアラートークンを作成する

SVF Cloudでは認証時にJWTベアラートークンを使用しています。

JWTベアラートークンは、次の手順で作成します。

  1. JWTヘッダーを次の形式で作成します。{"alg":"RS256"}

  2. JWTヘッダーをBase64エンコードします。結果は「eyJhbGciOiJSUzI1NiJ9」のように表示されます。

  3. iss、sub、exp、userName、timeZone、localeを使用して、JWTのJSON要求セットを作成します(timeZone、localeの設定は任意です)。

    {
      "iss": "SVFFEQQUGPSITUHVRAOMBRPUXMRXQKER",
      "sub": "xxxx@api.svfcloud.com",
      "exp": "1333685628",
      "userName": "帳票太郎",
      "timeZone": "Asia/Tokyo",
      "locale": "ja"
    }

    フィールド

    説明

    iss

    SVFFEQQUGPSITUHVRAOMBRPUXMRXQKER

    clientIdを指定します。

    sub

    xxxx@api.svfcloud.com

    ユーザーIDを指定します。ここで指定されたユーザー情報は、SVF Cloud Managerの処理履歴に表示されます。

    exp

    1333685628

    アクセストークンの有効期限(UTCで測定された1970-01-01T0:0:0Zからの秒数)を指定します。

    userName

    帳票太郎

    ユーザー名を指定します。ここで指定されたユーザー情報は、PDFプロパティの「作成者」に反映されます。

    timeZone

    Asia/Tokyo

    設定は任意です。タイムゾーンを指定します。ここで指定されたタイムゾーン情報は、以下に反映されます。

    • PDFプロパティの「作成日」

    • SVF実行部の下記関数の出力内容

      • DATE

      • IDATE

      • TIME

      • ITIME

    locale

    ja

    設定は任意です。ロケールを指定します。実行環境と異なるロケール(地域情報)を任意に設定できます。

  4. JWT要求セットを改行なしでBase64エンコードします。

  5. エンコードされたJWTヘッダーの新しい文字列およびエンコードされたJWT要求セットを、次の形式で作成します。

    encoded_JWT_Header + "." + encoded_JWT_Claims_Set
  6. 結果の文字列にRSA SHA256を使用して署名します。

  7. 次の形式で、文字列を連結します。

    encoded_JWT_Header + "." + encoded_JWT_Claims_Set + "." + base64_encoded_signature

参考

詳細は、アクセストークンの取得と破棄に関するサンプルプログラム「Authentication.java」をダウンロードし、合わせて確認してください。

アクセストークンの破棄

指定したアクセストークンを破棄します。

注意

PDFファイルをinvoiceAgent 文書管理(クラウド版)にアーカイブする場合、印刷が完了(正常終了またはエラー終了)するまで、トークンは破棄しないでください。

6. エンドポイントのURI
https://api.svfcloud.com/oauth2/revoke


7. HTTPメソッド

POST



8. HTTPリクエストのContent-Typeヘッダー

application/x-www-form-urlencoded



9. パラメーター
  • リクエストボディ

    リクエストボディのデータ

    必須

    説明

    token

    アクセストークン

    maru.png

    破棄するアクセストークンを指定します。

  • リクエストヘッダー

    ヘッダーフィールド

    説明

    Authorization

    Bearer {your access token}

    認証で取得したアクセストークンを指定します。



レスポンス

コード

説明

HTTP/1.1 204 No Content

正常に処理が実行されたことを意味します。

HTTP/1.1 400 Bad Request

リクエスト内容が不正な場合に発生します。

HTTP/1.1 401 Unauthorized

認証情報が不正な場合に発生します。

HTTP/1.1 429 Too many Requests

APIコール数が閾値を超えた場合に発生します。レスポンスヘッダーの「Retry-After」に返された値の秒数経過後に、再度実行してください。