Chat では、GitHub アプリを使用して、GitHub のイベント(問題、pull リクエスト、コメントなど)に関する通知を受け取ることができます。
始める前に
Google Chat で GitHub アプリを使用するには:
- アプリをインストールするには、Google Workspace 管理者から権限を付与してもらう必要があります。
- Chat にアプリを追加します。アプリを見つけて Chat に追加する方法をご覧ください。
- GitHub アカウントが必要です。
- GitHub リポジトリ用の Google Chat アプリをインストールする必要があります。
このセクションでは、サードパーティ サービスが GitHub リソースを統合してアクセスするための主要なメカニズムである GitHub アプリと OAuth アプリの明確な特性と運用モデルについて説明します。これらの違いを包括的に理解することは、組織内で最適なセキュリティ ポスチャーを維持するために不可欠です。
1. 比較分析: 主な違い
この 2 つのモデルの根本的な違いは、アクセスに使用される ID(プリンシパル)と、リソースの承認を管理するメカニズムにあります。
|
属性 |
GitHub アプリ(推奨されるログイン) |
OAuth アプリ(以前のログイン) |
|
プリンシパル ID |
ユースケースに応じて、ユーザーとは独立したアプリケーション ID として、または承認ユーザーに代わって動作します。 |
承認ユーザーに代わって動作し、その権限を継承します。 |
|
承認モデル |
きめ細かい権限(推奨): 最小権限の原則を採用し、特定のリポジトリとリソースタイプへのアクセスを許可します。例: メタデータのみの読み取りアクセス権。 |
広範なスコープ: 承認ユーザーに表示されるすべてのリソースへのアクセス権を付与するなど、広範なスコープでアクセスが定義されます。 |
|
認証情報の有効期間 |
有効期間の短いトークン: アクセス トークンの有効期間は限られており(通常は 1 時間)、頻繁に更新する必要があるため、不正使用された場合のリスクが大幅に軽減されます。 |
有効期限の長いトークン: アクセス トークンは、ユーザーが手動で取り消すまで存続するため、長期間にわたってリスクにさらされることになります。 |
|
インストール要件 |
管理者または組織のオーナーによってインストールされ、アカウントまたは組織への正式なリンクが確立されている必要があります。また、アプリがユーザーに代わって動作するユースケースでは、ユーザーによって承認されている必要があります。 |
個々のユーザーによって承認され、そのユーザーの ID に直接アクセスがリンクされている必要があります。 |
詳細なドキュメントについては、GitHub アプリと OAuth アプリの違いをご覧ください。
2. 推奨事項
セキュリティのベスト プラクティスに基づき、サードパーティと組織のすべての統合に GitHub アプリの認証メカニズムを使用することをおすすめします。このモデルは、最小権限の原則を適用し、有効期間が制限された堅牢な認証情報を採用することで、OAuth アプリの委任された権限モデルよりも高いセキュリティ基準と運用安定性を維持します。
Chat で GitHub アプリを設定する
- Chat アプリ
を開きます。
- GitHub アプリとのダイレクト メッセージを開くか、GitHub アプリが追加されているスペースに移動します。
- 設定ウィンドウを開くには、[Sign in] をタップします。
- [Configure Access]
[Sign in to GitHub] をタップします。
- ログイン手続きを完了して、ポップアップを閉じます。
- チャット ダイアログを更新するには、[Refresh] をタップします。
- [Add Repositories] で、通知を受け取る GitHub リポジトリを入力します。
- 通知を受け取るイベントのチェックボックスをオンにします。
- [保存] をタップします。
OAuth アプリ(以前)から GitHub アプリ(推奨)に移行する
現在の接続を以前の OAuth アプリ認証方法から推奨の GitHub アプリ認証方法に移行するには:
- Chat アプリ
を開きます。
- GitHub アプリとのダイレクト メッセージまたはスペースを開きます。
- メッセージ欄で、Google Workspace ツールアイコン
をタップします。
- コマンドリストで [GitHub Reauthorize] を選択します。
- 移行と再承認のプロセスを完了するには、Chat のダイアログの画面上の手順に沿って操作します。
スペースで GitHub アプリを使用する
スペースでアプリを使用するには、アプリへのメッセージとアプリからのメッセージへの返信で、@ または / を使って毎回アプリにメンションする必要があります。
@ または / を使ってメンションすることで、スペース内の他のユーザーではなく、アプリにメッセージを送ったことが明確になります。
- Chat アプリ
を開きます。
- スペースで @github または /github に続けてコマンドを入力します。
- @github または /github にメンションすると、スペース内の他のユーザーではなく、アプリにメッセージが送信されます。
アプリの設定を変更する
スペースでは、アプリを追加したユーザーのみが設定を変更できます。
- Chat アプリ
を開きます。
- GitHub アプリとのダイレクト メッセージを開くか、GitHub アプリが追加されているスペースに移動します。
- アプリの現在の設定を開くには、「
/github_settings」と入力します。 - 必要に応じて設定を変更します。
- [保存] をタップします。
スペースからアプリを削除すると、アプリの設定も削除されます。
Chat の GitHub アプリのコマンドの詳細
Chat で GitHub アプリを使用しているダイレクト メッセージまたはスペースのメッセージ欄では、次のコマンドを使用できます。
- スラッシュ コマンド:
/github_settings: 設定ダイアログを開きます。/github_reminders: 個人またはチームのオープン pull リクエストについて、スケジュール設定されたリマインダーを設定、編集します。/github_subscribe: GitHub <repoURL> または <owner/repo> を登録します。/github_openIssue: 新しい GitHub の課題を作成します。/github_logout: GitHub アカウントからログアウトします。/github_help: ヘルプ メッセージを表示します。/github_feedback: GitHub アプリに関するフィードバックを送信します。
- クイック コマンド: クイック コマンドにアクセスするには、Google Workspace ツールアイコン
をタップします。
- GitHub Connect: [Sign in](ログイン)と [Legacy Sign in](以前のログイン)のオプションを含むメッセージが表示されます。
- GitHub Reauthorize: 新しい接続方法に移行できます。
サポートされているコマンドの完全なリストを取得するには、以下の操作を行います。
- Android スマートフォンまたはタブレットで Chat アプリ
を開きます。
- ダイレクト メッセージを開くか、GitHub アプリがインストールされているスペースに移動します。
- 「
/github_help」と入力します。
Chat の GitHub アプリに関する問題のトラブルシューティング
リアルタイム通知に登録する際にエラーが発生する場合GitHub アプリ
スペースでリアルタイム通知を設定するには:
- ブラウザで GitHub プロフィールの設定に移動します。
- [統合] で [アプリケーション]
[承認済みの GitHub アプリ] をタップします。
- Google Chat で GitHub アプリを接続すると、承認済みアプリのリストに「Google Chat」と表示されます。
- GitHub リポジトリ用の Google Chat アプリをインストールします。
- または、組織 / リポジトリのオーナーにインストールをリクエストすることもできます。
- インストールが完了するまで待ちます。
- Google Chat で、GitHub アプリとのダイレクト メッセージまたはスペースを開きます。
- メッセージ欄に、サブスクリプションを作成するには「
/github_subscribe [organisation/repo]」または「/github_settings」と入力します。
OAuth アプリ
スペースでリアルタイム通知を設定するには、次を行う必要があります。
- 提案されたリポジトリの組織オーナーである必要があります。
- GitHub 組織でアプリを承認します。
- ブラウザで GitHub プロフィールの設定に移動します。
- [統合] で [アプリケーション]
[承認済みの OAuth アプリ] をタップします。
- Google Chat で GitHub アプリを接続すると、承認済みアプリのリストに「Google Chat」と表示されます。
- アクセスする組織へのアクセス権をアプリに付与します。
- メッセージ欄に「
/github_settings」と入力します。 - リポジトリの通知設定を編集するには、[通知設定] をタップします。
- 通知をフィルタするには、各通知の種類の横にある下矢印
をタップします。
- 通知をフィルタするための追加オプションが表示されます。
- 受け取る通知のチェックボックスをオンにします。
- [保存] をタップします。
スケジュール設定されたリマインダーで名前リンクが表示されるようにするには、Google Chat アカウントを GitHub アカウントに接続する必要があります。
- メッセージ欄に「
/github_settings」と入力します。 - アカウントを接続するには:
- ポップアップで、[アクセスを構成]
[GitHub にログイン] をタップします。
- GitHub アカウントにログインします。
- アプリを承認します。
- ポップアップで、[アクセスを構成]
- GitHub アプリから届いたメッセージで、[チームのリマインダーをスケジュール設定] を選択します。
- ポップアップで次の操作を行います。
- [新しいリマインダーを作成] をタップします。
- リマインダーの設定を行います。
- [保存] をタップします。
Google、Google Workspace、および関連するマークとロゴは、Google LLC の商標です。その他すべての企業名および商品名は、関連各社の商標または登録商標です。