すべてのプロダクト
Search
ドキュメントセンター

Identity as a Service:M2M クライアントトークンの呼び出し例

最終更新日:Apr 01, 2025

呼び出し例

認証方式: client_secret_basic

リクエストメソッド: POST

ヘッダーパラメーター

パラメーター

タイプ

説明

Authorization

文字列

Basic Base64(clientId:clientSecret)

Base64 エンコードされたクライアント ID とクライアントシークレット。

YXBwX201ZG9vemVzbm81Mmtxxxxxxxxx

Content-Type

文字列

コンテンツタイプ。 値を application/x-www-form-urlencoded に設定します。

application/x-www-form-urlencoded

リクエストパラメーター

パラメーター

タイプ

説明

grant_type

文字列

権限タイプ。 値を client_credentials に設定します。

client_credentials

scope

文字列

リクエストされた権限の範囲。 値は resourceServerIdentifier+"|"+scope の形式です。

たとえば、resourceServerIdentifier が http://www.example.com で、scope が read:file の場合、

返される結果は http://www.example.com|read:file です。

リソースサーバー識別子パラメーターを使用して、すべての承認済みスコープを取得できます。

http://aliyun.com|read:file

client_id

文字列

アプリケーション ID。

リクエスト例

curl --location --request POST 'https://XXXX.aliyunidaas.com/api/v2/iauths_system/oauth2/token' 
--header 'Authorization:xxxxxxx
--header 'Content-Type: application/x-www-form-urlencoded' 
--data-urlencode 'grant_type=client_credentials'
--data-urlencode 'scope=http://www.example.com|read:file'

レスポンスパラメーター

パラメーター

タイプ

Null 許容

説明

access_token

文字列

いいえ

アクセストークンの値。

expires_in

Long

いいえ

トークンの有効期間。 単位: 秒。

expires_at

Long

いいえ

トークンの有効期限が切れる時刻。 値は UNIX タイムスタンプです。 単位: 秒。

token_type

文字列

いいえ

トークンのタイプ。

レスポンス例

{
  "token_type": "Bearer",
  "access_token": "AT8csE2sepE4TT9j45xFgRGhEDyS3ovfZDF68Ac4aaQ7c4dBpUahD1cYSCFQbsfpM9ysSArv1pTszcGTZEJK11yGA62GKWd4cf33ZVGsgPfLwYDPX2ZRCUpThTaWoxtXCs9zeZzGwxjc5xtasaQMeuE8PuGeHg9SyMzKxJQVv9ubQhoFXjQkoPUotUms4R2M9SBLpWSCaGDf3oiJ5WCuGyMzJdrrdQeLSB7dU9P1iKbjxGWCmwaMLMkUWZBKsAeYi3xjJmpMsuLq3811KAV5bttwi8z8cafuweuNvwdjfZYCYvNbRAt1nB9Bxn9Q99rdpYawU3eH3UvzkvMYoJ5wtnGSsPJ9B7NHBkxxHUG",
  "expires_in": 3600,
  "expires_at": 1733710213
}

認証方式: client_secret_post

リクエストメソッド: POST

ヘッダーパラメーター

パラメーター

タイプ

説明

Content-Type

文字列

コンテンツタイプ。 値を application/x-www-form-urlencoded に設定します。

application/x-www-form-urlencoded

リクエストパラメーター

パラメーター

タイプ

説明

grant_type

文字列

権限タイプ。値を client_credentials に設定します。

client_credentials

client_id

文字列

アプリケーション ID。

client_secret

文字列

アプリケーションシークレット。

scope

文字列

リクエストされた権限の範囲。 値は resourceServerIdentifier+"|"+scope の形式です。

たとえば、resourceServerIdentifier が http://www.example.com で、scope が read:file の場合、

返される結果は http://www.example.com|read:file です。

リソースサーバー識別子パラメーターを使用して、すべての承認済みスコープを取得できます。

http://aliyun.com|read:file

リクエスト例

curl --location --request POST 'https://XXXX.aliyunidaas.com/api/v2/iauths_system/oauth2/token' 
--header 'Content-Type: application/x-www-form-urlencoded' 
--data-urlencode 'grant_type=client_credentials' 
--data-urlencode 'client_id=app_m5doozesno52kbqrqpw3XXXX' 
--data-urlencode 'client_secret=CS5v3F4Cy8hyDmFPJtAuyHDTUdR8i88GcgcXXXXX'
--data-urlencode 'scope=http://www.example.com|read:file'

レスポンス例

{
  "token_type": "Bearer",
  "access_token": "AT8csE2sepE4TT9j45xFgRGhEDyS3ovfZDF68Ac4aaQ7c4dBpUahD1cYSCFQbsfpM9ysSArv1pTszcGTZEJK11yGA62GKWd4cf33ZVGsgPfLwYDPX2ZRCUpThTaWoxtXCs9zeZzGwxjc5xtasaQMeuE8PuGeHg9SyMzKxJQVv9ubQhoFXjQkoPUotUms4R2M9SBLpWSCaGDf3oiJ5WCuGyMzJdrrdQeLSB7dU9P1iKbjxGWCmwaMLMkUWZBKsAeYi3xjJmpMsuLq3811KAV5bttwi8z8cafuweuNvwdjfZYCYvNbRAt1nB9Bxn9Q99rdpYawU3eH3UvzkvMYoJ5wtnGSsPJ9B7NHBkxxHUG",
  "expires_in": 3600,
  "expires_at": 1733710213
}

認証方式: client_secret_jwt

リクエストメソッド: POST

ヘッダーパラメーター

パラメーター

タイプ

説明

Content-Type

文字列

コンテンツタイプ。 値を application/x-www-form-urlencoded に設定します。

application/x-www-form-urlencoded

リクエストパラメーター

パラメーター

タイプ

説明

grant_type

文字列

権限タイプ。 値を client_credentials に設定します。

client_credentials

client_id

文字列

アプリケーション ID。

client_assertion_type

文字列

クライアントアサーションタイプ。 値を urn:ietf:params:oauth:client-assertion-type:jwt-bearer に設定します。

client_assertion

文字列

client_secret を使用してクライアントが発行した署名。 値は JWT 形式です。 署名アルゴリズムは HS256 です。

scope

文字列

リクエストされた権限の範囲。 値は resourceServerIdentifier+"|"+scope の形式です。

たとえば、resourceServerIdentifier が http://www.example.com で、scope が read:file の場合、

返される結果は http://www.example.com|read:file です。

リソースサーバー識別子パラメーターを使用して、すべての承認済みスコープを取得できます。

http://aliyun.com|read:file

リクエスト例

curl --request POST \
  --url 'https://XXXX.aliyunidaas.com/api/v2/iauths_system/oauth2/token' \
  --header 'Content-Type: application/x-www-form-urlencoded' \
  --data-urlencode 'client_id={{clientId}}' \
  --data-urlencode 'grant_type=client_credentials' \
  --data-urlencode 'client_assertion_type=urn:ietf:params:oauth:client-assertion-type:jwt-bearer' \
  --data-urlencode 'client_assertion={{JwtToken}}'
  --data-urlencode 'scope=http://www.example.com|read:file'

レスポンス例

{
  "token_type": "Bearer",
  "access_token": "AT8csE2sepE4TT9j45xFgRGhEDyS3ovfZDF68Ac4aaQ7c4dBpUahD1cYSCFQbsfpM9ysSArv1pTszcGTZEJK11yGA62GKWd4cf33ZVGsgPfLwYDPX2ZRCUpThTaWoxtXCs9zeZzGwxjc5xtasaQMeuE8PuGeHg9SyMzKxJQVv9ubQhoFXjQkoPUotUms4R2M9SBLpWSCaGDf3oiJ5WCuGyMzJdrrdQeLSB7dU9P1iKbjxGWCmwaMLMkUWZBKsAeYi3xjJmpMsuLq3811KAV5bttwi8z8cafuweuNvwdjfZYCYvNbRAt1nB9Bxn9Q99rdpYawU3eH3UvzkvMYoJ5wtnGSsPJ9B7NHBkxxHUG",
  "expires_in": 3600,
  "expires_at": 1733710213
}

認証方式: private_key_jwt

リクエストメソッド: POST

ヘッダーパラメーター

パラメーター

タイプ

説明

Content-Type

文字列

コンテンツタイプ。 値を application/x-www-form-urlencoded に設定します。

application/x-www-form-urlencoded

リクエストパラメーター

パラメーター

タイプ

説明

grant_type

文字列

権限タイプ。 値を client_credentials に設定します。

client_credentials

client_id

文字列

アプリケーション ID。

client_assertion_type

文字列

クライアントアサーションタイプ。 値を urn:ietf:params:oauth:client-assertion-type:jwt-bearer に設定します。

client_assertion

文字列

秘密鍵を使用してクライアントが発行した署名。 値は JWT 形式です。 署名アルゴリズムは RS256 です。

scope

文字列

リクエストされた権限の範囲。 値は resourceServerIdentifier+"|"+scope の形式です。

たとえば、resourceServerIdentifier が http://www.example.com で、scope が read:file の場合、

返される結果は http://www.example.com|read:file です。

リソースサーバー識別子パラメーターを使用して、すべての承認済みスコープを取得できます。

http://aliyun.com|read:file

リクエスト例

curl --request POST \
  --url 'https://XXXX.aliyunidaas.com/api/v2/iauths_system/oauth2/token' \
  --header 'Content-Type: application/x-www-form-urlencoded' \
  --data-urlencode 'client_id={{clientId}}' \
  --data-urlencode 'grant_type=client_credentials' \
  --data-urlencode 'client_assertion_type=urn:ietf:params:oauth:client-assertion-type:jwt-bearer' \
  --data-urlencode 'client_assertion={{JwtToken}}'
  --data-urlencode 'scope=http://www.example.com|read:file'

レスポンス例

{
  "token_type": "Bearer",
  "access_token": "AT8csE2sepE4TTj45xFgRGhEDyS3ovfZDF68Ac4aaQ7c4dBpUahD1cYSCFQbsfpM9ysSArv1pTszcGTZEJK11yGA62GKWd4cf33ZVGsgPfLwYDPX2ZRCUpThTaWoxtXCs9zeZzGwxjc5xtasaQMeuE8PuGeHg9SyMzKxJQVv9ubQhoFXjQkoPUotUms4R2M9SBLpWSCaGDf3oiJ5WCuGyMzJdrrdQeLSB7dU9P1iKbjxGWCmwaMLMkUWZBKsAeYi3xjJmpMsuLq3811KAV5bttwi8z8cafuweuNvwdjfZYCYvNbRAt1nB9Bxn9Q99rdpYawU3eH3UvzkvMYoJ5wtnGSsPJ9B7NHBkxxHUG",
  "expires_in": 3600,
  "expires_at": 1733710213
}

エラーコード

HTTP ステータスコード

エラーコード

エラーメッセージ

説明

400

invalid_request

必須パラメーター変数: grant_type

リクエストに必要なパラメーターが不足しているか、指定されたパラメーター値が無効であるか、パラメーター値の形式が無効です。

400

authentication_required

認証が必要です。許可されている認証方式: [client_secret_basic, client_secret_post, client_secret_jwt, private_key_jwt]

認証方式が無効です。次の認証方式がサポートされています:

client_secret_basic、client_secret_post、client_secret_jwt、

private_key_jwt

400

invalid_client_credential

無効な client_assertion。理由: [expired]

クライアントアサーションが無効で、トークンの有効期限が切れています。

400

invalid_grant

無効またはサポートされていない grant_type: authorization_code

権限のタイプがサポートされていません。

400

invalid_scope

無効なスコープ: http://www.example.com|read:file

リクエスト範囲が無効または不明です。

500

internal_error

予期しない内部エラー

内部サーバーエラーが発生しました。