対話型マップについて
GeoJSON または TopoJSON 構文を使って お使いの GitHub Enterprise Server インスタンス ユーザーが対話型マップを作成できるようにすることができます。 対話型マップの作成について詳しくは、「ダイアグラムの作成」をご覧ください。
対話型マップを有効にするには、Azure Mapsの認証資格情報を指定する必要があります。
前提条件
-
インスタンスの対話型マップを構成するには、Microsoft Entra ID内のテナントへの管理アクセス権が必要です。 詳細については、会社の Microsoft リソースの管理者に問い合わせるか、「Quickstart: Microsoft Learn の Microsoft Entra ID で新しいテナントを作成する」を参照してください。
-
Entra ID の自分のテナントのテナント ID を知っている必要があります。 詳細については、Microsoft Learn の Get サブスクリプション ID とテナント ID Azure ポータルを参照してください。
-
インスタンスが https://login.microsoftonline.com にアクセスできる必要があります。
Azure Mapsの資格情報の生成
Azure Mapsの資格情報を生成するには、Entra ID でテナントのアプリケーションを作成し、Azure Maps アカウントへのアプリケーション アクセスを提供し、ロールベースのアクセス制御 (RBAC) を構成する必要があります。
-
Entra ID テナントに新しいアプリケーションを登録します。 詳細については、Microsoft Learn の「クイックスタート: Microsoft ID プラットフォームにアプリケーションを登録する」を参照してください。
- サポートされているアカウントの種類を指定する際に、[この組織のディレクトリ内のアカウントのみ] を選択します。
-
クライアント シークレットの追加。 詳細については、Microsoft Learn の「クイックスタート: Microsoft ID プラットフォームにアプリケーションを登録する」を参照してください。
-
お使いの GitHub Enterprise Server インスタンス で認証を構成するときに参照できるセキュリティで保護された場所にシークレットの値を格納します。 ページを離れた後、Entra に値が表示されることはありません。
-
Azure Mapsでシークレットへのアクセスを構成します。
- Entra ID テナントで構成したアプリケーションの詳細を表示しているときに、左側のサイドバーで [API のアクセス許可] をクリックします。
- [ アクセス許可の追加] をクリックします。
- [Azure Maps をクリックします。
-
**[委任されたアクセス許可]** を選択します。 - [アクセス許可の選択] で [
user_impersonation] を選択します。 -
**[アクセス許可の追加]** をクリックしてアクセス許可を保存します。
-
Azure Maps アカウントにサインインします。 アカウントがない場合は、 作成できます。 詳細については、Azure Maps Account Web サイトを参照してください。
-
Azure Mapsの RBAC を構成します。 詳細については、Microsoft Learn の「Azure Maps との認証」および「Azure ポータルを使って Azure ロールを割り当てる」を参照してください。
- Entra ID テナントで、Access コントロール (IAM) から、"Azure Maps データ閲覧者" のロールを "ユーザー、グループ、またはサービス プリンシパル" に割り当て、前の手順で作成したアプリケーションを選択し、フォームに入力する必要があります。
対話型マップの有効化
Entra ID テナントでアプリケーションを作成し、Azure Mapsで使用するためのシークレットを生成した後、お使いの GitHub Enterprise Server インスタンス でインタラクティブ マップを設定できます。
-
GitHub Enterprise Server の管理アカウントから、任意のページの右上隅にある をクリックします。
-
[サイト管理者] ページにまだ表示されていない場合は、左上隅の [サイト管理者] をクリックします。1. [ Site admin] サイドバーで、[[Management Console]] をクリックします。1. [Settings] サイドバーで [Privacy] をクリックして、[Private mode] をオフにします。
-
対話型マップを有効にするには、[GeoJSON レンダリングを有効にする] を選択します。
-
クロスサイト リクエスト フォージェリ (CSRF) を防ぐためのシークレットとして使用する 32 文字の文字列を生成します。 たとえば、管理シェルにアクセスし、お使いの GitHub Enterprise Server インスタンス の
opensslを使用して文字列を生成できます。 詳しくは、「管理シェル (SSH) にアクセスする」をご覧ください。Shell openssl rand -hex 32
openssl rand -hex 32次の手順で参照できる安全な場所に文字列を格納します。
-
見出しの下に、Azure Mapsの認証の詳細を入力するか貼り付けます。
-
お使いのインスタンスが GitHub Enterprise Server 3.20 を実行している場合は、「Azure Maps API トークン」の下にトークンを入力するか貼り付けてください。
-
インスタンスで GitHub Enterprise Server 3.20 以降を実行している場合は、見出しの下に次の情報を入力するか貼り付けます。
-
オプションでレンダリングされるマップのスタイルを変更するには、[ベースマップ ID] に使用するスタイルの ID を入力します。
-
見出しの下に、認証の詳細を入力するかペーストします。
値 説明 詳細 Azure マップ クライアント ID Azure Maps アカウントのクライアント ID [Microsoft Learn 上の Azure Maps で認証を管理する](https://learn.microsoft.com/azure/azure-maps/how-to-manage-authentication#view-authentication-details) || Azure App クライアント ID | Entra ID テナントで作成したアプリケーションのアプリケーション (クライアント) ID | リソースにアクセスできるMicrosoft Entra アプリケーションとサービス プリンシパルを作成します microsoft Learn | | Azure テナント ID | Entra ID のテナントの ID | 前提条件 | | Azure App クライアント シークレット | Entra ID テナントでアプリケーション用に生成したクライアント シークレット | Azure Maps の資格情報を生成する | CSRF シークレット | CSRF 攻撃を防ぐための 32 文字の文字列 | 前のステップを参照してください。 |
-
-
-
[設定] サイドバーで [設定の保存] をクリックします。
メモ
[Management Console] で設定を保存すると、システム サービスが再起動され、ユーザーにわかるダウンタイムが発生する可能性があります。
-
設定の実行が完了するのを待ってください。
対話型マップの無効化
-
GitHub Enterprise Server の管理アカウントから、任意のページの右上隅にある をクリックします。
-
[サイト管理者] ページにまだ表示されていない場合は、左上隅の [サイト管理者] をクリックします。1. [ Site admin] サイドバーで、[[Management Console]] をクリックします。1. [Settings] サイドバーで [Privacy] をクリックして、[Private mode] をオフにします。
-
対話型マップを無効にするには、[GeoJSON レンダリングを有効にする] の選択を解除します。
-
[設定] サイドバーで [設定の保存] をクリックします。
メモ
[Management Console] で設定を保存すると、システム サービスが再起動され、ユーザーにわかるダウンタイムが発生する可能性があります。
-
設定の実行が完了するのを待ってください。