データ所在地付き GitHub Enterprise Cloudを採用する場合は、会社のコードとデータを格納する場所を選択できます。
このガイドで行うこと:
- データ所在地と専用ドメインを使用してエンタープライズ アカウントを作成するための試用版を開始するGHE.com
- 認証を構成し、ID 管理システムでプロビジョニングを行って、ユーザーを追加します
- 動作が異なる機能や、追加の構成が必要な機能など、使用可能な機能について説明します GitHub.com
- 企業の課金設定を行います。
- 必要に応じて、別のプラットフォームからデータを移行します
この初期セットアップが済むと、organization とリポジトリの作成、コードでの共同作業、ポリシーの構成などを行うことができます。
前提条件
-
Microsoft Azure サブスクリプションで支払う場合は、Azure portal への管理者アクセス権を持っているか、他のユーザーと協力して管理者の同意ワークフローを構成する必要があります。 すべての前提条件の一覧については、「Azure サブスクリプションの接続」を参照してください。
-
クライアント システムが GitHub の SSH キー フィンガープリントを信頼し、特定のホスト名と IP アドレスにアクセスできることを確認する必要があります。 「GHE.com のネットワークの詳細」をご覧ください。
1.試用版にサインアップする
データ所在地の使用を開始するには、試用版にサインアップします。 試用版:
- 30日間持続します
- ほとんどの GitHub Enterprise 機能へのアクセスが含まれますが、 試用版に含まれていない機能に記載されている機能は含まれません
- 最大 3 つの新しい organization を作成できます
-
上記のリンクをクリックして試用版ページにアクセスします。
-
管理ユーザーで始める を選択します。
-
[データ ホスティング] で、ドロップダウン メニューを使用して、 データ所在地のリージョンを選択します。
-
サインアップ フォームを完成させます。 次のフィールドには特に注意してください。
- Subdomain: Enterprise の専用ドメインに表示されます。 (例:
octocorp.ghe.com)。メモ
サブドメインを慎重に選択してください。 後で変更することはできません。
- ID プロバイダー: 特定の ID プロバイダーと提携して、円滑な体験を提供しますGitHub。 ご利用の ID プロバイダーがパートナーであるかどうかをチェックし、他のシステムの要件をよく理解してください。 「Enterprise Managed Users について」を参照してください。
- Admin work email: 初めてサインインして Enterprise を構成するための招待状がここ宛てに送信されます。
- Subdomain: Enterprise の専用ドメインに表示されます。 (例:
-
[Create enterprise] をクリックします。
エンタープライズのプロビジョニングには数時間かかる場合があります。 準備が完了すると、[Admin work email] のアドレス宛てにようこそメールとパスワードをリセットするための招待が届きます。
2.Enterprise にユーザーを追加する
GHE.com企業はEnterprise Managed Usersを使用します。 GHE.comでユーザー アカウントを作成し、新しいエンタープライズへのアクセス権を付与するには、認証と SCIM プロビジョニングを構成する必要があります。 「Enterprise Managed Users の概要」を参照してください。
セットアップ ユーザーとしてサインインする
Enterprise を作成すると、セットアップ ユーザーのパスワード (認証とプロビジョニングの構成に使用される) を選択するように求めるメールが届きます。 ユーザー名は、ランダムに生成されるショートコードに _admin というサフィックスが付いたものです。
シークレット ウィンドウまたはプライベート ブラウズ ウィンドウの使用:
-
ユーザーのパスワードを設定します。
-
2 要素認証 (2FA) を有効にして、ユーザーの回復コードを保存します。 「2 要素認証を設定する」を参照してください。
メモ
2FA が有効になっていない場合は、セットアップ ユーザーとしてサインインするたびに、Enterprise のシングル サインオン (SSO) 回復コードを入力する必要があります。 SSO が有効になったら、これらのコードをダウンロードできます。
-
会社のパスワード管理ツールにセットアップ ユーザーの資格情報を格納することを強くお勧めします。 認証設定を更新したり、別の ID プロバイダーまたは認証方法に移行したり、Enterprise の回復コードを使ったりするには、このユーザーとしてサインインする必要があります。
セットアップ ユーザーについて詳しくは、「ユーザーのセットアップ」をご覧ください。
personal access token を作成する
次に、プロビジョニングの構成に使用できる personal access token を作成します。
- トークンを作成する際は、セットアップ ユーザーとしてサインインする必要があります。
- トークンには、少なくとも scim:enterprise スコープが必要です。
- トークンに有効期限は必要ありません。
personal access token (classic) の作成方法については、「個人用アクセス トークンを管理する」を参照してください。
認証の構成
次に、メンバーの認証方法を構成します。
IdP として Entra ID を使用している場合は、OpenID Connect (OIDC) と Security Assertion Markup Language (SAML) のいずれかを選択できます。
- 条件付きアクセス ポリシー (CAP) のサポートを含む OIDC をお勧めします。
- 1 つのテナントからプロビジョニングされた複数のエンタープライズが必要な場合、最初のエンタープライズには SAML または OIDC を使用できますが、追加の各エンタープライズには SAML を使用する必要があります。
Okta や PingFederate などの別の IdP を使っている場合は、メンバーの認証に SAML を使う必要があります。
まず、選択した認証方法のガイドを参照してください。
プロビジョニングの構成
認証を構成したら、SCIM プロビジョニングを構成できます。これは、IdP が マネージド ユーザー アカウント に GitHub を作成する方法です。 「エンタープライズ マネージド ユーザー を管理するための SCIM プロビジョニングの構成」をご覧ください。
組織のメンバーシップを管理する
認証とプロビジョニングを構成したら、IdP グループをチームと同期することで、マネージド ユーザー アカウント の組織メンバーシップとライセンス割り当ての管理を開始できます。 「ID プロバイダー グループを使用したチーム メンバーシップの管理」をご覧ください。
3. GitHubの機能について学習する
企業の初期セットアップを完了すると、自分と企業のメンバーは、 GitHubの機能の使用を開始できます。
データ所在地 の GHE.com で使用できる機能は、マネージド ユーザー アカウント の GitHub.com が使用できる機能と似ていますが、いくつかの追加と例外があります。 一部の機能は、 GitHub.comの同等の機能と比較して動作が異なるか、追加の構成が必要です。 「GitHub Enterprise Cloud とデータ所在地の機能の概要」を参照してください。
4. 購入 GitHub Enterprise
試用版中はいつでも GitHub Enterprise を購入できます。 これを行うには、Enterprise アカウントに表示される [Activate enterprise] ボタンをクリックします。
ライセンスとサービスの料金を支払うには、クレジット カード、PayPal、または Microsoft Azure サブスクリプションを使用できます。
- クレジット カードまたは PayPal の詳細の追加については、「支払いおよび課金情報の管理」を参照してください。
- Azure サブスクリプションのリンクについては、「Azure サブスクリプションの接続」を参照してください。
5.データの移行
GHE.comで既存のデータを新しい企業に移行するには、GitHubの移行ツールを使用できます。
必要に応じて、試用中にデータを GHE.com に移行できます。 ただし、移行された organization は、試用期間中の新規 organization 数の上限である 3 つにカウントされます。
- GitHub.com、GitHub Enterprise Server、Azure DevOps、または Bitbucket Server から移行する場合は、GitHub Enterprise Importer を使用してソース コードの履歴とメタデータを移行できます。 「GitHub Enterprise Importer について」を参照してください。
- GitHub Enterprise Server 3.17 以降からの移行では、Enterprise Live Migrationsを使用できます。 これにより、ダウンタイムが短縮され、複雑なモノレポのサポートが向上します。 「GitHub Enterprise Server から GHE.com へのライブ マイグレーションについて」を参照してください。
- それ以外のプラットフォームから移行する場合は、「GitHub への移行パス」を参照してください。
スクリプトの例 GitHub Enterprise Importer
次のスクリプトは、GitHub Enterprise Importer上のGitHub.comからターゲット リポジトリへの個々のソース リポジトリの移行にGHE.comを使用する方法を示しています。
--target-api-url パラメーターは、移行先として企業をGHE.comに設定します。
スクリプトの環境変数定義を例として使用して、 GitHub Enterprise Importerを使用してデータを移行する追加のコマンドを作成できます。
以下のスクリプトでは、次のプレースホルダー テキストを実際の値に置き換えます。
| プレースホルダー | 説明 |
|---|---|
| TARGET-TOKEN | |
| Personal access token (PAT) を使用してターゲット 企業にアクセスする GHE.com | |
| SOURCE-TOKEN | |
| GitHub.com 上のソースリソースにアクセスするための PAT | |
| TARGET-GHE-API-URL | Enterprise の API エンドポイントにアクセスするための URL。 たとえば、Enterprise のサブドメインが octocorp である場合、この値は https://api.octocorp.ghe.com でなければなりません。 |
| SOURCE-GH-ORGANIZATION-NAME | |
| GitHub.comのソース組織の名前。 | |
| SOURCE-GH-REPOSITORY-NAME | |
| GitHub.comのソース リポジトリの名前。 | |
| TARGET-GHE-ORGANIZATION-NAME | |
| GHE.com上のターゲット組織の名前。 | |
| TARGET-GHE-REPOSITORY-NAME | |
| GHE.com上のターゲット リポジトリの名前。 |
#!/bin/sh export GH_PAT="TARGET-TOKEN" export GH_SOURCE_PAT="SOURCE-TOKEN" export TARGET_API_URL="TARGET-GHE-API-URL" export GITHUB_SOURCE_ORG="SOURCE-GH-ORGANIZATION-NAME" export SOURCE_REPO="SOURCE-GH-REPOSITORY-NAME" export GITHUB_TARGET_ORG="TARGET-GHE-ORGANIZATION-NAME" export TARGET_REPO="TARGET-GHE-REPOSITORY-NAME" gh gei migrate-repo --target-api-url $TARGET_API_URL --github-source-org $GITHUB_SOURCE_ORG --source-repo $SOURCE_REPO --github-target-org $GITHUB_TARGET_ORG --target-repo $TARGET_REPO --verbose
#!/bin/sh
export GH_PAT="TARGET-TOKEN"
export GH_SOURCE_PAT="SOURCE-TOKEN"
export TARGET_API_URL="TARGET-GHE-API-URL"
export GITHUB_SOURCE_ORG="SOURCE-GH-ORGANIZATION-NAME"
export SOURCE_REPO="SOURCE-GH-REPOSITORY-NAME"
export GITHUB_TARGET_ORG="TARGET-GHE-ORGANIZATION-NAME"
export TARGET_REPO="TARGET-GHE-REPOSITORY-NAME"
gh gei migrate-repo --target-api-url $TARGET_API_URL --github-source-org $GITHUB_SOURCE_ORG --source-repo $SOURCE_REPO --github-target-org $GITHUB_TARGET_ORG --target-repo $TARGET_REPO --verbose