Akamai EdgeGrid PHPの認証
このライブラリにはPHP 8+が必要であり、ドロップイン交換用クライアントとミドルウェアの両方として、ガズルの上にあるアカマイエッジグリッド認証スキームを実装しています。
インストールするには、 composerを使用します。
$ composer require akamai-open/edgegrid-clientリリースページからPhARファイルをダウンロードし、コード内に含める:
```php
include 'akamai-open-edgegrid-auth.phar';
// Library is ready to use
```
AkamaiOpenEdgeGridClientドロップインの交換としてGuzzleHttpClientを拡張します。 Guzzleを使用する他の方法を変更せずにAPIリクエストに署名するように透過的に機能します。
クライアントを使用するには、 AkamaiOpenEdgeGridClient->setAuth()を呼び出すか、APIにリクエストする前にAkamaiOpenEdgeGridAuthentication提供します。
$ client = new Akamai Open EdgeGrid Client ([
' base_uri ' => ' https://akab-h05tnam3wl42son7nktnlnnx-kbob3i3v.luna.akamaiapis.net '
]);
$ client -> setAuth ( $ client_token , $ client_secret , $ access_token );
// use $client just as you would GuzzleHttpClient
$ response = $ client -> get ( ' /identity-management/v3/user-profile ' );資格情報を生成するには、認証資格情報の作成を参照してください。
ローカル.edgerc認証ファイルを使用することをお勧めします。地元のホームディレクトリまたはWebサーバーユーザーのホームディレクトリに[default]の見出しの下に資格情報を配置します。
[default]
client_secret = C113nt53KR3TN6N90yVuAgICxIRwsObLi0E67/N8eRN=
host = akab-h05tnam3wl42son7nktnlnnx-kbob3i3v.luna.akamaiapis.net
access_token = akab-acc35t0k3nodujqunph3w7hzp7-gtm6ij
client_token = akab-c113ntt0k3n4qtari252bfxxbsl-yvsdj
.edgercファイルを2つの方法のいずれかに呼び出すことができます。
Factory Method AkamaiOpenEdgeGridClient::createFromEdgeRcFile()を使用します。
$ client = Akamai Open EdgeGrid Client:: createFromEdgeRcFile ();
// use $client just as you would GuzzleHttpClient
$ response = $ client -> get ( ' /identity-management/v3/user-profile ' );資格情報セクションおよび/または.edgerc場所を指定します。
$ client = Akamai Open EdgeGrid Client:: createFromEdgeRcFile ( ' example ' , ' ../config/.edgerc ' );
// use $client just as you would GuzzleHttpClient
$ response = $ client -> get ( ' /identity-management/v3/user-profile ' );このライブラリは、HTTPIEを模倣する限られた機能セットを備えたコマンドラインインターフェイス(CLI)を提供します。
CLIをComposer vendor/bin/httpでインストールするか、PhARファイルを実行します。
# Composer installed
$ ./vendor/bin/http --help
# For Windows
> php ./vendor/bin/http --help
# PHAR download
php akamai-open-edgegrid-client.phar --help認証を設定し、HTTPメソッド(ケースの非感受性)、そのヘッダー、およびJSONボディフィールドを指定できます。
注: CLIには、すべてのHTTPデータとボディデータが表示されます。 JSONが形成されています。
| 口論 | 説明 |
|---|---|
--auth-type={edgegrid,basic,digest} | 認証タイプを設定します。デフォルトはnoneです。 |
--auth user:または--a user: | 使用する.edgercセクションを設定します。 httpie-edgegridとは異なり、コロン: :)はオプションです。 |
Header-Name:value | ヘッダーと値はコロン( :分離されています。 |
jsonKey=value | {"jsonKey": "value"}をPOSTするか、体をPUT 。これにより、 Content-Typeを自動的に設定し、 application/jsonにヘッダーAccept 。 |
jsonKey:=[1,2,3] | 生のJSONデータを指定して、体内に{"jsonKey": [1, 2, 3]}を送信できます。 |
multipart/mime (ファイルアップロード)データを送信することはできません。このパッケージは、 Clientを使用するとき、標準GuzzleHttpClientに、またはハンドラーとして透過的に追加できる3つの異なるミドルウェアハンドラーを提供します。
AkamaiOpenEdgeGridHandlerAuthentication 。AkamaiOpenEdgeGridHandlerVerbose for output(またはlog)応答。AkamaiOpenEdgeGridHandlerDebug出力(またはログ)エラー。| ハンドラ | 電話 |
|---|---|
Authentication | Client->setAuthentication()またはAkamaiEdgeGridAuthentication to Client->__construct()のインスタンスで渡します。 |
Verbose | Client->setInstanceVerbose()またはClient::setVerbose() `trueの渡されます |
Debug | Client->setInstanceDebug() 、 Client::setDebug() 、または `trueでdebug構成オプションを設定します |
| ハンドラ | 例 |
|---|---|
| 認証 | // Create the Authentication Handler
$ auth = Akamai Open EdgeGrid Handler Authentication:: createFromEdgeRcFile ();
// or:
$ auth = new Akamai Open EdgeGrid Handler Authentication ;
$ auth -> setAuth ( $ client_token , $ client_secret , $ access_token );
// Create the handler stack
$ handlerStack = GuzzleHttp HandlerStack:: create ();
// Add the Auth handler to the stack
$ handlerStack -> push ( $ auth );
// Add the handler to a regular GuzzleHttpClient
$ guzzle = new GuzzleHttp Client ([
" handler " => $ handlerStack
]); |
| 冗長 | // Create the handler stack
$ handlerStack = HandlerStack:: create ();
// Add the Auth handler to the stack
$ handlerStack -> push ( new Akamai Open EdgeGrid Handler Verbose ());
// Add the handler to a regular GuzzleHttpClient
$ guzzle = new GuzzleHttp Client ([
" handler " => $ handlerStack
]); // Create the handler stack
$ handlerStack = HandlerStack:: create ();
// Add the Auth handler to the stack
$ handlerStack -> push ( new Akamai Open EdgeGrid Handler Debug ());
// Add the handler to a regular GuzzleHttpClient
$ guzzle = new GuzzleHttp Client ([
" handler " => $ handlerStack
]); |
Copyright©2022 Akamai Technologies、Inc。All Rights Reserved
Apacheライセンス、バージョン2.0(「ライセンス」)に基づいてライセンスされています。ライセンスに準拠している場合を除き、このファイルを使用することはできません。 http://www.apache.org/licenses/license-2.0でライセンスのコピーを入手できます。
適用法で要求されていないか、書面で合意されていない限り、ライセンスに基づいて配布されたソフトウェアは、明示または黙示のいずれかの保証または条件なしに、「現状のまま」に基づいて配布されます。ライセンスに基づく権限と制限を管理する特定の言語のライセンスを参照してください。