Google Cloud Console

Google Cloud Console では、Cloud Storage の簡単なストレージ管理作業を行うことができます。たとえば、Cloud Console では次のような作業を行います。

  • プロジェクトの Cloud Storage API の有効化
  • バケットの作成と削除
  • オブジェクトのアップロード、ダウンロード、削除
  • Identity and Access Management(IAM)ポリシーの管理

このページでは、Cloud Console を使用してデータを管理する方法など、Cloud Console の概要について説明します。gsutil コマンドライン ツールや Cloud Storage をサポートするクライアント ライブラリを使用すると、より複雑な作業を行うことができます。

Cloud Console へのアクセス

Cloud Console は、セットアップやインストールが不要であり、ブラウザから直接アクセスできます。Cloud Console へのアクセス方法は、ユースケースに応じて多少異なります。ユーザーの種類に応じて、以下のようになります。

プロジェクトへのアクセス権が付与されているユーザー

https://console.cloud.google.com/ を使用してください。

Google Cloud Console をプロジェクト メンバーとして使用するには、プロジェクトのメンバーリストに自分が追加されている必要があります。現在のプロジェクト オーナーは、プロジェクトで定義されているすべてのバケットとオブジェクトに適用される権限を付与できます。詳細については、プロジェクトへのメンバーの追加をご覧ください。

バケットへのアクセス権が付与されているユーザー

https://console.cloud.google.com/storage/browser/[BUCKET_NAME] を使用してください。

この例では、プロジェクト オーナーがプロジェクト内の個々のバケットに対するアクセス権をユーザーに付与します。ユーザーは、このパケット名をオーナーから取得し、上記の URL で使用します。ユーザーが操作できるのは、指定されたバケット内のオブジェクトだけです。これは、プロジェクト メンバーでないユーザーがバケットにアクセスする場合に便利な方法です。Google アカウントにログインせずに URL にアクセスすると、認証を求めるメッセージが表示されます。

プロジェクト オーナーがバケット内のオブジェクトの読み取り権限をすべてのユーザーに付与する場合にも、この方法を使用します。これにより、公開されたコンテンツを含むバケットを作成できます。詳細については、以下の権限とメタデータの設定をご覧ください。

オブジェクトに対するアクセス権が付与されているユーザー

https://console.cloud.google.com/storage/browser/_details/[BUCKET_NAME]/[OBJECT_NAME] を使用してください。

この例では、プロジェクト オーナーがバケット内の 1 つのオブジェクトに対するアクセス権をユーザーに付与し、オブジェクトにアクセスするための URL をユーザーに送信します。Google アカウントにログインせずに URL にアクセスすると、認証を求めるメッセージが表示されます。

上記の URL の形式は、一般公開されているオブジェクトの URL とは異なります。リンクを一般公開している場合、URL は https://storage.googleapis.com/[BUCKET_NAME]/[OBJECT_NAME] という形式になります。この公開 URL を使用する場合、Google の認証は必要ありません。このため、オブジェクトに対する非認証アクセスで使用されます。

Google Cloud Console で実行できるタスク

Cloud Console を使用すると、ブラウザを使ってデータの基本的なストレージ管理作業を行うことができます。Cloud Console を使用するには、Google による認証を受け、以下の作業を行うための適切な権限を持っている必要があります。プロジェクトを作成したアカウント オーナーであれば、以下の作業を行うのに必要なすべての権限がすでにあるはずです。権限がない場合は、プロジェクト メンバーとして追加してもらうか(プロジェクトへのメンバーの追加)、バケットに対する操作を行うための権限を付与してもらいます(バケットの権限の設定)。

バケットの作成

Cloud Storage はフラットな名前空間を使用してデータを保管しますが、Cloud Console を使用すると、複数のフォルダを作成して疑似的なフォルダ階層を作成できます。データが物理的に階層構造で保存されるわけではありませんが、Cloud Console では階層構造のように表示されます。

Cloud Storage システムにはフォルダの概念がないため、ユーザーが gsutil や、Cloud Storage に対応している他のコマンドライン ツールを使用してフォルダを表示すると、フォルダ サフィックスとオブジェクト名の区切り文字が表示されます。

Cloud Console を使用してバケットを作成する手順については、ストレージ バケットの作成をご覧ください。

バケットへのデータのアップロード

データをバケットにアップロードするには、ファイルかファイルが含まれるフォルダをアップロードします。フォルダをアップロードすると、Cloud Console は、それに含まれているすべてのファイルとフォルダを含め、フォルダと同じ階層構造を維持します。アップロード進行状況ウィンドウを使って、Cloud Console へのアップロードの進行状況を追跡できます。進行状況ウィンドウを最小化し、バケットの操作を続けることができます。

Cloud Console でオブジェクトをバケットにアップロードする手順については、オブジェクトのアップロードをご覧ください。

デスクトップまたはファイル管理ツールから、ファイルやフォルダをバケットやサブフォルダにドラッグ&ドロップすることで、Cloud Console にオブジェクトをアップロードすることもできます。

バケットからのデータのダウンロード

Cloud Console を使用してバケットからオブジェクトをダウンロードする手順については、オブジェクトのダウンロードをご覧ください。

また、オブジェクトをクリックして詳細を表示することもできます。オブジェクトを表示できる場合、詳細ページにはオブジェクト自体のプレビューが含まれます。

フォルダの作成と使用

Cloud Storage にはフォルダという概念はありません。したがって、Cloud Console でフォルダを作成すると、バケット内のオブジェクトを整理できます。Cloud Console では、フォルダとオブジェクトを区別できるように、フォルダはフォルダ アイコン画像で表示されます。

[フォルダを作成] ボタンをクリックすると、バケット(またはバケット内のフォルダ)に新しいフォルダを作成できます。バケットと異なり、フォルダ名は全体で固有のものはありません。バケットは、同じ名前のパケットが存在しない場合のみ作成できますが、バケットまたはサブフォルダから移動しない限り、フォルダ名を繰り返し使用できます。

Cloud Console では、フォルダに追加されたオブジェクトがそのフォルダ内に配置されたように表示されます。実際には、バケットレベルにすべてのオブジェクトが存在するため、名前の中にディレクトリ構造が含まれす。たとえば、pets という名前のフォルダを作成し、このフォルダにファイル cat.jpeg を追加すると、Cloud Console ではフォルダ内にファイルが表示されます。実際には、個別のフォルダ エンティティは存在しません。ファイルはバケット内に存在し、pets/cat.jpeg という名前が設定されます。

Cloud Console で、ファイルリストの上にあるパンくずリストで必要なフォルダ名またはバケット名をクリックすると、上位のディレクトリにアクセスできます。

gsutil でのフォルダの使用

他のツールを使ってバケットとデータを操作する場合、フォルダの表示方法は、Cloud Console での表示方法と異なる可能性があります。gsutil でのフォルダの扱いについては、サブディレクトリの仕組みをご覧ください。

表示するオブジェクトのフィルタリング

Cloud Console では、オブジェクト リストの上にある [前方一致でフィルタ...] テキスト ボックスで接頭辞を指定すると、表示するオブジェクトをフィルタリングできます。このフィルタを使用すると、指定した接頭辞で始まるオブジェクトが表示されます。接頭辞でフィルタリングされるのは、現在のバケット表示に表示されているオブジェクトだけです。フォルダに含まれるオブジェクトは選択されません。

オブジェクト メタデータの設定

Cloud Console オブジェクトのメタデータを構成できます。オブジェクトのメタデータは、データがどのコンテンツ タイプを表すかや、データのエンコード方法など、リクエストがどのように処理されるかを制御します。Cloud Console ではオブジェクトのメタデータを 1 つずつ設定します。複数のオブジェクトのメタデータを同時に設定するには、gsutil setmeta を使用します。

オブジェクトのメタデータを表示して編集する手順については、オブジェクトのメタデータの表示と編集をご覧ください。

オブジェクト、フォルダ、バケットの削除

Google Cloud Console でバケット、フォルダまたはオブジェクトを削除するには、削除対象の横にあるチェックボックスをオンにして [削除] ボタンをクリックします。操作の確認を行って処理を続行します。フォルダまたはバケットを削除すると、その中のすべてのオブジェクトも削除されます。[公開] と表示されているオブジェクトも削除されます。

Cloud Console でバケットからオブジェクトを削除する手順については、オブジェクトの削除をご覧ください。

Cloud Console でプロジェクトからバケットを削除する手順については、バケットの削除をご覧ください。

データの一般公開

オブジェクトを一般公開すると、オブジェクトの [公開アクセス] 列にリンクアイコンが表示されます。このリンクをクリックすると、オブジェクトにアクセスするための公開 URL が表示されます。

オブジェクトを公開して他のユーザーと共有する手順については、データの一般公開をご覧ください。

一般公開のオブジェクトにアクセスする方法については、一般公開データへのアクセスをご覧ください。

オブジェクトの公開を停止するには:

オブジェクトの一般公開を停止するには、メンバーとして allUsersallAuthenticatedUsers を含む権限エントリを削除します。

公開アクセス列の使用

Cloud Console ではバケットとオブジェクトのどちらにも、リソースが一般公開されているかどうかを示す [公開アクセス] 列があります。

バケットレベルの [公開アクセス] 列

バケットの公開アクセス列には、[インターネットに公開]、[非公開]、[オブジェクトの ACL に準拠] のいずれかの値を指定できます。

次の条件を満たす Cloud IAM のロールがある場合、バケットは [インターネットに公開] になります。

  • ロールに、メンバーとして allUsers または allAuthenticatedUsers が含まれている。
  • ロールに storage.buckets.createstorage.buckets.list 以外のストレージ権限が 1 つ以上含まれている。

これらの条件が true でない場合、バケットは [非公開] または [オブジェクトの ACL に準拠] のいずれかになります。

  • 非公開: Cloud IAM のロールでバケット内のオブジェクトへの公開アクセスを付与するものはなく、バケットに対して均一なバケットレベルのアクセス権が有効になります。

  • オブジェクトの ACL に準拠: Cloud IAM のロールでバケット内のオブジェクトへの公開アクセスを付与するものはありませんが、アクセス制御リスト(ACL)によって、バケット内の個々のオブジェクトへの公開アクセスが付与されます。公開されているかどうかを確認するには、各オブジェクトの権限をチェックします。Cloud IAM のみを使用するには、均一なバケットレベルのアクセスを有効にします

オブジェクト レベルの [公開アクセス] 列

次の条件のいずれかに該当する場合には、オブジェクトは公開されています。

  1. オブジェクトのアクセス制御リスト(ACL)allUsers または allAuthenticatedUsers のエントリが含まれている。

  2. オブジェクトを含むバケットに、次の条件を満たす IAM のロールがある。

    • ロールに、メンバーとして allUsers または allAuthenticatedUsers が含まれている。
    • エントリに、ストレージ権限として、storage.objects.getstorage.objects.getIamPolicystorage.objects.setIamPolicystorage.objects.update のうち 1 つ以上が設定されている。

上記の条件が満たされると、そのオブジェクトの [公開アクセス] 列には [インターネットに公開] と表示されます。

上記の条件が満たされない場合、そのオブジェクトの [公開アクセス] 列には [非公開] と表示されます。

バケットの権限の設定

Identity and Access Management(IAM)権限を使用すると、Cloud Storage バケットに対するアクセスを制御できます。たとえば、バケットの権限を設定し、ユーザーまたはグループなどのエンティティにバケット内のオブジェクトの表示や作成を許可できます。これは、ユーザーをプロジェクト レベルで追加するのが適切でない場合に行います。IAM 権限に指定されたエンティティは、バケットにアクセスするときに Google にログインし、認証を行う必要があります。https://console.cloud.google.com/storage/browser/[BUCKET_NAME]/ としてバケットの URL をユーザーと共有します。

オブジェクトの権限の設定

Cloud Console で Identity and Access Management(IAM)権限を使用すると、バケット内のオブジェクトに対するアクセスを簡単に、均一に制御できます。バケット内のオブジェクトに対するアクセスを個別にカスタマイズするには、署名付き URL またはアクセス制御リスト(ACL)を使用します。

IAM 権限を表示して編集する手順については、IAM 権限の使用をご覧ください。

個々のオブジェクトの権限を表示または変更する方法については、ACL の変更をご覧ください。

プロジェクト レベルのロールをユーザーを設定する

プロジェクトを作成すると、ユーザーにオーナー IAM ロールが設定されます。共同編集者などの他のエンティティが、このプロジェクトのバケットやオブジェクトを操作できるようにするには、エンティティに固有のロールを設定する必要があります。

このプロジェクトのロールが付与されると、プロジェクトのリストにプロジェクト名が表示されます。すでにプロジェクト オーナーになっている場合には、プロジェクトにメンバーを追加できます。プロジェクト レベルでアクセス権の追加または削除を行う手順については、プロジェクトでの IAM の使用をご覧ください。

Cloud Data Loss Prevention でのバケットのスキャン

Cloud Data Loss Prevention(Cloud DLP)はバケット内の機密データを特定して保護するサービスです。Cloud DLP は、次のような情報を検索、削除して、コンプライアンス要件を満たすのに役立ちます。

  • クレジット カード番号
  • IP アドレス
  • 個人情報(PII)のその他の形式

Cloud DLP で検出されるデータの種類の一覧については、infoType 検出器リファレンスをご覧ください。

バケットのその他メニューをクリックし、[Cloud Data Loss Prevention でスキャン] を選択すると、バケットの Cloud DLP スキャンを開始できます。バケットで Cloud DLP スキャンを行う方法については、Cloud Storage のロケーションの検査をご覧ください。