プロジェクトを作成する

プロジェクトは、 Cloud de Confiance by S3NS リソース階層の基本的なオペレーション単位です。プロジェクトは、フォルダ(または組織)と仮想マシンやストレージなどのリソースの間に存在します。このページでは、Cloud Resource Manager API と Cloud de Confiance コンソールを使用してCloud de Confiance プロジェクトを作成する方法について説明します。

プロジェクトの主な特徴は次のとおりです。

  • プライマリ サービス コンテナ: プロジェクトは、すべてのCloud de Confiance by S3NS サービス(API)が有効になり、Compute Engine インスタンスや BigQuery データセットなどのリソースが作成されるベースレベルです。

  • 信頼境界: プロジェクトは分離レイヤとして機能します。デフォルトでは、あるプロジェクトのリソースは別のプロジェクトのリソースにアクセスできないため、異なるアプリケーションや環境に対して安全な境界が確立されます。

  • 請求単位: プロジェクトは、組織全体の費用を追跡、整理、分離するための主な方法です。

  • ポリシーの適用ポイント: ポリシーはフォルダから継承されることが多いですが、プロジェクト レベルは、特定の権限(Identity and Access Management(IAM))がデベロッパーとサービス アカウントに日常業務のために付与される最も一般的な場所です。

始める前に

リソース階層の概要で、プロジェクト リソースについてお読みください。リソース階層の設定については、 Cloud de Confiance ランディング ゾーンのリソース階層を決定するをご覧ください。

プロジェクトには次の識別子が使用されます。

  • プロジェクト名: 人が読めるプロジェクト名。

    プロジェクト名には次の要件があります。

    • 長さは 4 ~ 30 文字にする必要があります。
    • 英数字、一重引用符、ハイフン、スペース、感嘆符を使用できます。
    • 末尾は英字または数字にする必要があります。

    プロジェクト名は Google API では使用されません。プロジェクト名は、プロジェクトの作成中や作成後にいつでも編集できます。プロジェクト名は一意である必要はありません。

  • プロジェクト ID: プロジェクトのグローバルに一意の固有識別子。

    プロジェクト ID は、プロジェクトを Cloud de Confiance by S3NSの他のすべてのプロジェクトと区別する一意の文字列です。プロジェクト名を入力すると、Cloud de Confiance コンソールは文字、数字、ハイフンの組み合わせで一意のプロジェクト ID を生成します。生成されたプロジェクト ID を使用します。この ID はプロジェクトの作成時に編集することもできます。プロジェクトの作成後、プロジェクト ID は不変になります。

    プロジェクト ID には次の要件があります。

    • 6 ~ 30 文字にする必要があります。
    • 使用できるのは英小文字、数字、ハイフンのみです。
    • 先頭は英字にする必要があります。
    • 末尾をハイフンにすることはできません。
    • 使用中または以前に使用された ID は指定できません(削除済みのプロジェクトも含む)。
    • google や ssl などの制限付き文字列を含めることはできません。プロジェクト ID に undefined や null などの文字列を使用しないでください。

    すべての Cloud de Confianceプロジェクト ID には、自動的に s3ns: という接頭辞が付きます。

  • プロジェクト番号: プロジェクト番号は、プロジェクトに対して自動的に生成される一意の識別子です。プロジェクト番号を確認するには、プロジェクトを特定するをご覧ください。

プロジェクト名、プロジェクト ID、他のリソース名には、個人を特定できる情報やセキュリティ データなどの機密情報を含めないでください。プロジェクト ID は、他の多くの Cloud de Confiance by S3NSリソースの名前で使用されます。プロジェクトまたはそのリソースを参照すると、プロジェクト ID とリソース名が公開されます。

プロジェクトを作成する

プロジェクトを作成するには、resourcemanager.projects.create 権限が必要です。この権限は、プロジェクト作成者のロール(roles/resourcemanager.projectCreator)などのロールに含まれています。

ロールを個人に付与し、組織リソース全体でのアクセスを制限する方法については、デフォルトの組織ロールの管理ページをご覧ください。

親リソースを指定しなければ、ユーザー アカウントのドメインに基づいて親リソースが自動的に選択されます。

新しいプロジェクトは、 Cloud de Confiance コンソール、Google Cloud CLI または projects.create() メソッドを使用して作成できます。

コンソール

新しいプロジェクトを作成するには、次の操作を行います。

  1. Cloud de Confiance コンソールの [リソースの管理] ページに移動します。

    [リソースの管理] に移動

    残りの手順は、 Cloud de Confiance コンソールに表示されます。

  2. [プロジェクトを作成] をクリックします。
  3. 表示される [新しいプロジェクト] ウィンドウで、プロジェクト名を入力し、該当する請求先アカウントを選択します。プロジェクト名には文字、数字、単一引用符、ハイフン、スペース、感嘆符のみを使用でき、4 ~ 30 文字にする必要があります。
  4. [親リソース] ボックスに親組織またはフォルダ リソースを入力します。このリソースが新しいプロジェクトの階層上の親になります。
  5. 新しいプロジェクトの詳細を入力し終えたら、[作成] をクリックします。

gcloud

  1. Cloud de Confiance コンソールで Cloud Shell をアクティブにします。

    Cloud Shell をアクティブにする

    Cloud de Confiance コンソールの下部で Cloud Shell セッションが開始し、コマンドライン プロンプトが表示されます。Cloud Shell はシェル環境です。Google Cloud CLI がすでにインストールされており、現在のプロジェクトの値もすでに設定されています。セッションが初期化されるまで数秒かかることがあります。

  2. 新しいプロジェクトを作成するには、次のように gcloud projects create コマンドを使用します。

    gcloud projects create PROJECT_ID
    

    PROJECT_ID は、作成するプロジェクトの ID です。プロジェクト ID は先頭を小文字にする必要があります。また、使用できるのは ASCII 文字、数字、ハイフンのみで、6~30 文字にする必要があります。

    親として組織リソースまたはフォルダを持つプロジェクトを作成するには、--organization または --folder フラグを使用します。リソースの親は 1 つのみであるため、これらのフラグのうち 1 つだけ使用できます。

    gcloud projects create PROJECT_ID --organization=ORGANIZATION_ID
    
    gcloud projects create PROJECT_ID --folder=FOLDER_ID
    

REST

projects.create() メソッドを使用して新しいプロジェクトを作成する場合、プロジェクト ID に特定の単語を使用できません。たとえば、google、null、undefined、ssl などです。制限付きの単語を使用すると、リクエストにより INVALID_ARGUMENT エラーが返されます。

次のリクエストはプロジェクトを作成するだけで、請求先アカウントに自動的に関連付けられません。projects.updateBillingInfo メソッドを使用して、プロジェクトに関連付けられた請求先アカウントを設定または更新します。

プロジェクト リクエストを作成する:

POST https://cloudresourcemanager.googleapis.com/v3/projects/
Authorization: *************
Content-Type: application/json

{
    "projectId": "our-project-123",
    "name": "my project",
    "labels": {
      "mylabel": "prod"
    }
}

プロジェクト レスポンスを作成する:

{
    "name": "operations/pc.123456789",
}

オペレーション リクエストを取得する:

GET https://cloudresourcemanager.googleapis.com/v3/operations/pc.123456789
Authorization: *************
Content-Type: application/json

オペレーション レスポンスを取得する:

{
    "name": "operations/pc.123456789",
    "done": true,
    "response": {
        "@type": "type.googleapis.com/google.cloudresourcemanager.v3.Project",
        "projectNumber": "464036093014",
        "projectId": "our-project-123",
        "lifecycleState": "ACTIVE",
        "name": "my project",
        "labels": {
        "mylabel": "prod"
        },
    "createTime": "2016-01-07T21:59:43.314Z"
    }
}

プロジェクトの作成時にタグを追加する

タグを使用すると、リソースのアノテーションを作成できます。タグは、プロジェクトの作成時に追加できます。タグを追加する際に、タグユーザーのロールを割り当てる必要があります。このロールに割り当てられる権限の詳細については、リソースのタグの管理をご覧ください。タグの Key-Value ペアの名前空間は、次のいずれかの方法でのみ追加できます。

gcloud

プロジェクトの作成時にタグを追加するには、次のコマンドを実行します。

gcloud projects create PROJECT_ID --organization=ORGANIZATION_ID --tags=KEY_VALUE_PAIRS

以下を置き換えます。

  • PROJECT_ID はプロジェクトの固有識別子です。
  • ORGANIZATION_ID はプロジェクトの固有識別子です。
  • KEY_VALUE_PAIRS は、リソースに割り当てることができる Key-Value ペアのカンマ区切りのリストです。カンマ区切りの Key-Value ペアの例は 123/environment=production, 456/create=testresource です。この例では、123 と 456 は、タグキーが定義されている組織またはフォルダ リソースの固有識別子(ID)です。

REST

次のスニペットは、プロジェクトを作成してタグを追加する JSON リクエストです。

  POST https://cloudresourcemanager.googleapis.com/v3/projects/
  Authorization: *************
  Content-Type: application/json

  {
    "projectId": "our-project-456",
    "name": "my project",
    "parent": "organizations/123",
    "tags": {
      "key": "123/environment"
      "value": "production"
    },
"tags": {
      "key": "123/costCenter"
      "value": "marketing"
  }
}

タグを使用してプロジェクト環境を指定する

タグを使用すると、本番環境、ステージング環境、開発環境などの環境に基づいてプロジェクトを視覚的に区別できます。これにより、エラーを防ぎ、機密性の高い環境で作業する際の認識を高めることができます。特定のタグのキーと値のペアを持つプロジェクトが選択されると、Google は Cloud de Confiance コンソールのプロジェクト選択ツールでプロジェクトに目印を追加します。このインジケーターは、変更を行うと関連付けられている本番環境または非本番環境のアプリケーションに影響する可能性があることを示します。タグは、プロジェクトによって継承されるか、プロジェクトに直接設定されます。

この機能を使用するには、次の操作を行います。

  1. environment という名前のタグキーを作成します。
  2. 使用する環境カテゴリのタグ値を作成します。次の値がサポートされており、コンソールのプロジェクト選択ツールの対応するバッジにマッピングされます。
    • Prod: Prod、prod、Production、production
    • Dev: Dev、dev、Development、development
    • テスト: Test、test、Testing、testing、QA、qa、Quality assurance、quality assurance
    • ステージング: Staging、staging、Stage、stage
  3. タグ バインディングを作成して、プロジェクトに適切なタグを適用します。

プロジェクトに複数の環境タグ(フォルダから継承されたタグとプロジェクトに直接設定されたタグなど)がある場合、最も具体的なタグを使用してバッジが決定されます。

サービス アカウントを使用したプロジェクトの作成

サービス アカウントを使用して、プロジェクトの作成を自動化できます。ユーザー アカウントの場合と同様に、サービス アカウントには組織リソース内にプロジェクトを作成する権限を付与することができます。サービス アカウントは、組織リソース外にプロジェクトを作成することはできません。また、プロジェクトの作成時に親リソースを指定する必要があります。サービス アカウントは、gcloud CLI または projects.create() メソッドを使用して新しいプロジェクトを作成できます。

プロジェクトの割り当ての管理

組織の割り当てでプロジェクトの容量を追加でリクエストするには、 Cloud de Confiance by S3NS チームにサポート チケットを開きます。詳細については、割り当ての調整をリクエストするをご覧ください。

次のステップ