デフォルトでは、Cloud Object Storage(COS)のリソース(バケット、オブジェクト)はすべてプライベート読み取り/書き込みであり、オブジェクトのURLを取得しても、匿名ユーザーは署名がないため、URLからリソースの内容にアクセスすることはできません。
COSの権限承認およびID認証のフローは、Tencent Cloudアカウントの登録から始まる5段階となっています。Tencent Cloudアカウントの登録、COSサービスの有効化、権限承認IDの作成、IDへの権限設定、アクセスとID認証の開始、の5つです。
Tencent Cloudアカウントの登録後、お客様のアカウントはルートアカウントとして存在します。ルートアカウントは最高権限を有します。
COSサービスをアクティブ化すると、お客様の作成したすべてのバケットがルートアカウントの所有となります、ルートアカウントはすべてのリソースの最高使用権限を有するとともに、サブアカウントを作成してサブアカウントの権限承認を行う権限を有します。
注意:バケットまたはオブジェクトをパブリック読み取りとして開放している場合を除き、COSへのアクセスには必ずID認証を経なければなりません。
ルートアカウントによって複数のIDを作成し、それぞれ異なるリソースの異なる使用権限を付与することができます。
異なるTencent Cloudアカウント間で権限承認を行う状況で、1つのCOSバケットにのみ権限承認を行いたい場合は、 バケットポリシーまたはバケットACLによって直接別のルートアカウントに権限承認を行うことができます。複数のCOSバケットまたは複数のTencent Cloudリソース権限承認が必要な場合は、CAMコンソールでコラボレーターIDを作成し、より広範囲の権限承認を行うことができます。
COSは複数の権限設定方法をサポートしています。それにはバケットポリシー、ユーザーポリシー(CAMポリシー)、バケットACLおよびオブジェクトACLがあり、ご自身のユースケースに合った権限承認の方法を選択することができます。
COSにはコンソール、APIリクエスト、SDKなどの複数の手段でアクセスすることができます。セキュリティ上の観点から、バケットはデフォルトではプライベート読み取りとなっており、どの手段であってもID認証を経る必要があります。コンソールの場合は、アカウントパスワードを使用するとログインできます。APIリクエストおよびSDKの場合、すべてのユーザーはキー(SecretId/SecretKey)を使用してID認証を受ける必要があります。
デフォルトではCOSバケットはプライベートであり、キー (パーマネントキー、一時キー)によるCOSアクセスであっても署名付きURLを使用したアクセスであっても、ID認証の段階を経る必要があります。特別な必要性がある場合はバケットをパブリック読み取りとして開放することもできますが、これはリスクを伴う操作であり、あらゆるユーザーがID認証を経ることなく、オブジェクトURLから直接オブジェクトをダウンロードできてしまいます。
キー(SecretId/SecretKey)は、ユーザーがTencent Cloud APIキーにアクセスしてID認証を受ける際に必要なセキュリティ証明書であり、APIキー管理で取得することができます。各ルートアカウントおよびサブアカウントはいずれも複数のキーを作成することができます。
パーマネントキーにはSecretIdとSecretKeyが含まれます。各ルートアカウントおよびサブアカウントはいずれも2対のパーマネントキーを生成することができます。パーマネントキーはアカウントの永続的なIDを表すもので、削除しなければ長期的に有効です。詳細については、パーマネントキーを使用したCOSアクセスをご参照ください。
一時キーにはSecretId、SecretKey、Tokenが含まれます。各ルートアカウントおよびサブアカウントはいずれも複数の一時キーを生成することができます。パーマネントキーと比較して、一時キーには有効期間(デフォルトでは1800秒)があり、有効期間はルートアカウントでは最長7200秒まで、サブアカウントでは最長129600秒までそれぞれ設定可能です。詳細については、フェデレーションによる一時アクセス証明書の取得をご参照ください。
一時キーはフロントエンドの直接送信などの、一時的な権限承認のシーンに適します。信頼性の低いユーザーに対しては、パーマネントキーではなく一時キーを発行することで、安全性を高めることができます。詳細については、一時キーを使用したCOSアクセスをご参照ください。
詳しい内容および使用説明については署名付きURLを使用したCOSアクセスをご参照ください。
第三者がバケットからオブジェクトをダウンロードできるようにし、なおかつ相手にCAMアカウントまたは一時キーなどの方法を使用させたくない場合は、署名付きURLを使用して署名を第三者に渡し、一時的なダウンロード操作を完了させることができます。有効な署名付きURLを受領した人は誰でもオブジェクトをダウンロードできます。
第三者がオブジェクトをバケットにアップロードできるようにし、なおかつ相手にCAMアカウントまたは一時キーなどの方法を使用させたくない場合は、署名付きURLを使用して署名を第三者に渡し、一時的なアップロード操作を完了させることができます。有効な署名付きURLを受領した人は誰でもオブジェクトをアップロードできます。
デフォルトではCOSバケットはプライベートであり、キー (パーマネントキー、一時キー)によるCOSアクセスであっても署名付きURLを使用したアクセスであっても、ID認証の段階を経る必要があります。
特別な必要性がある場合はバケットまたはオブジェクトをパブリック読み取りとして開放することもできますが、あらゆるユーザーがいかなるID認証も経ることなく、オブジェクトURLから直接オブジェクトをダウンロードできてしまいます。
注意:リソースをパブリック読み取りとして開放することにはセキュリティ上のリスクが伴います。リソースのリンクが一度漏洩すると、誰でもアクセス可能となり、悪意あるユーザーによってトラフィックが不正使用されるおそれがあります。
コンソール上でバケット全体をパブリック読み取りに設定することができます。この場合、バケット内の各オブジェクトはすべてオブジェクトURLから直接ダウンロード可能となります。設定方法については、バケットアクセス権限の設定をご参照ください。
コンソール上で単一のオブジェクトをパブリック読み取りに設定することができます。この場合、そのオブジェクトのみ、URLから直接ダウンロード可能となり、その他のオブジェクトは影響を受けません。設定方法については、オブジェクトのアクセス権限の設定をご参照ください。
コンソール上でフォルダをパブリック読み取りに設定することができます。この場合、そのフォルダ下のすべてのオブジェクトがURLから直接ダウンロード可能となり、フォルダ外のオブジェクトは影響を受けません。設定方法については、フォルダの権限の設定をご参照ください。
この記事はお役に立ちましたか?