サイトのリソースが違法なサイトによってダウンロードされ、盗用されないよう保護するために、必要に応じてType ABCDの4つの認証方式の1つを選択できます。ここでは、Type Cの各パラメータフィールドと原理について詳しくご説明します。
アルゴリズムの説明
アクセスURLの形式http://DomainName/md5hash/timestamp/FileName
注意:アクセスURLに中国語を含むことはできません。
認証フィールドの説明
フィールド | 説明 |
---|---|
DomainName | CDNドメイン名。 |
Filename | リソースのアクセスパスは、認証時に Filenameがスラッシュ( / )で始まる必要があります。 |
timestamp | サーバーが認証URLを発行する時間は、16進数の整数型の正数のUnixタイムスタンプを使用し、UTC時間1970年01月01日00時00分00秒から現在の総秒数までで、その定義と所在するタイムゾーンは関係ありません。 |
md5hash | MD5アルゴリズムによって計算した固定長は32桁の文字列です。具体的な計算公式は次のとおりです: • md5hash = md5sum(pkeytimestampuri) パラメータの間にはいかなる符号もありません • pkey: カスタムキー:6 ~40桁のアルファベットの大文字、小文字と数字で構成されています。キーを大切に保管してください。クライアントとサーバーのみ知っている必要があります。 • uri リソースのアクセスパスはスラッシュ(/)で始まる必要があります。 • timestamp: 値は上記のtimestampです。 |
認証ロジックの説明
CDNサーバーはクライアントからのリクエストを受けると、url内のtimestampパラメータ+認証URLの有効期限を解析して現在の時間と比較します。
Type-Cで認証する設定を例として、パラメータおよびコンソールを以下のように設定します。
フィールド設定
http://cloud.tencent.com/test.jpg
発行プロセス
パラメータ | 値 |
---|---|
uri | リソースのアクセスパスは /test.jpgです |
timestamp | 1582791032 |
pkey | dimtm5evg50ijsx2hvuwyfoiu65 |
認証URLの発行:http://cloud.tencent.com/ea68b93ac23ebbc6eebf7f163c6e9c4c/1582791032/test.jpg
クライアントがURLの暗号化によってアクセスする場合、CDNサーバーが計算したmd5hash値とアクセスリクエスト内にあるmd5hash値が同じであれば、いずれもea68b93ac23ebbc6eebf7f163c6e9c4cとなり、認証に合格し、そうでなければ認証に失敗します。
キャッシュのヒット率
TypeC認証方式が有効になっているドメイン名は、URLへのアクセスパスに署名とタイムスタンプが保持されます。CDNノードでリソースをキャッシュする時、認証パスが自動的に無視され、ドメイン名キャッシュのヒット率には影響しません。
back-to-originのポリシー
TypeC認証方式が有効になっているドメイン名について、アクセスする際の形式は次のとおりです。
http://DomainName/md5hash/timestamp/FileName
認証にパスした後、ヒットしたCDNノードがない場合、ノードはback-to-originリクエストを送信します。back-to-originリクエストは、パス中のmd5hashとtimestampパスを削除します。オリジンサーバーは特別な処理を行う必要はありません。
この記事はお役に立ちましたか?