Enterprise Team の管理
この記事の英語版に更新があります。ご覧の翻訳には含まれていない変更点があるかもしれません。
最終更新日 2024年06月03日(月)
この機能は、Heroku Enterprise で使用できます。
Enterprise Team は、以前は Heroku Org または Organization と呼ばれていました。名前が変わっても、既存の機能または設定に変更はありません。現在 “Org” を置き換えるように、すべての CLI コマンドを更新しています。その作業は進行中であるため、いくつかの Org コマンドが残っています。
Enterprise Team は、共有されたアプリケーションのグループへのアクセスを管理したり、Enterprise Team 内のさまざまなアプリによって使用されるリソースを確認したりするのに役立ちます。開発エクスペリエンスはほとんど同じままですが、きめ細かいアクセス制御が可能になり、開発プロセスをより効率的に管理できるようになりました。
Enterprise Team がプロビジョニングされると、Heroku は、その Enterprise Team の名前、リソースの制限、ダッシュボードへのリンクが記載されたメールを送信します。このガイドでは、Enterprise Team の設定を完了する方法の概要について説明します。
Apps (アプリ)
Enterprise Team アプリは、Apps
(アプリ) タブに一覧表示されます。右側の列は、そのスタックにリンクしています。複数のアプリのアイコンでマークされたパイプラインにはスタックが表示されません。アプリケーションは、Enterprise Team に移動されるか、または Enterprise Team の一部として作成されたときに Enterprise Team の一部になります。
特定のアプリやパイプラインを検索するには、フィルターオプションを使用します。
Heroku Teams と個人アカウントにも、アプリの一覧をページ分割および検索する同じ機能があります。
Enterprise Accounts のユーザーは、各自の Enterprise Account の Teams
(チーム) および Access
(アクセス) タブにある Enterprise Team およびユーザーの管理でも、ページ分割とフィルターの機能を利用できます。
アプリの作成
“管理者” と “メンバー” のアクセス許可を持つ Enterprise Team ユーザーは、Enterprise Team 内で直接アプリを作成できます。アプリを作成するには、メインメニューから Enterprise Team を選択し、新規作成ボタンを選択します。
CLI からアプリを作成するには、heroku create
コマンドで --org
フラグを使用して Enterprise Team 名を指定します。アプリ名を指定しない場合は、ランダムなアプリ名が生成されます。Heroku の命名方式は <adjective>-<noun>-<4 digit number>
で、形容詞と名詞は、ブランドに適した単語のリストから選ばれたものです。次の例では、組織 acme-widgets
にランダムな名前が付いたアプリを作成します。
$ heroku create --org acme-widgets
Creating gentle-garden-8862 in organization acme-widgets... done
https://gentle-garden-8862.herokuapp.com/ | https://git.heroku.com/gentle-garden-8862.git
アプリ名を指定するには、次のように実行します。
$ heroku create --org acme-widgets --app apple
Creating apple... done
https://apple.herokuapp.com/ | https://git.heroku.com/apple.git
アプリの移動
既存の開発チームでは、多くの場合、共有アカウントまたは個人用の開発者アカウントの下で複数のアプリが開発されています。アプリの所有者は、アプリを Enterprise Team の一部として管理できるようにするには、事前にそれらのアプリを Enterprise Team に移動しておく必要があります。請求もアプリと共に移動されます。
Dashboard を使用してアプリケーションを移動するには、現在のアプリの所有者がアプリケーションの Settings
(設定) タブにアクセスし、「Transfer Ownership」 (所有権の移動) セクションまで下にスクロールして Enterprise Team を選択する必要があります。
CLI を使用してアプリを Enterprise Team に移動することもできます。
$ heroku apps:transfer acme-widgets -a deep-spring-4274
Transferring deep-spring-4274 to acme-widgets... done
アプリの一括移動
Dashboard で複数のアプリを Enterprise Team に移動するには:
- 移動されるアプリを受け取る Enterprise Team を選択します。
Settings
(設定) タブを選択します。Bulk App Transfer
(アプリの一括移動) の前にあるTransfer Apps
(アプリの移動) ボタンを選択します。- アプリを選択し、
Transfer
(移動) を選択して、それらを新しい Enterprise Team に移動します。
アプリの削除
Enterprise Team アプリは、新しい所有者に移動するか、またはそのアプリを削除することによって削除します。管理者は任意のアプリを削除または移動できます。メンバーがアプリを削除または移動するには、そのアプリの管理アクセス許可を持っている必要があります。
アプリを削除するには、次の手順に従います。
1. Heroku Dashboard でアプリをクリックします。
2. Settings
(設定) をクリックします。
3. Delete app...
(アプリの削除…) をクリックします。
4. アプリの名前を入力し、Delete app
(アプリの削除) をクリックして削除を実行します。
コンプライアンス機能: OAuth を経由したアプリへのアクセスの制限
Heroku Enterprise 管理者は、Heroku 以外のすべての製品およびサービスからの Enterprise Team が所有するリソースへの OAuth アクセスを拒否できます。Heroku Platform API へのサードパーティーの OAuth アクセスは、Enterprise Team の Settings
(設定) タブでオフにします。Enterprise Team のメンバーは、引き続き Heroku で OAuth を使用できますが、Enterprise Team が所有するリソースにはアクセスできなくなります。
サードパーティーの OAuth アクセスが無効になっている場合、Enterprise Team 内のアプリに対して試行された API 呼び出しからはエラーが返されます。個人のアカウントまたは Heroku Team 内のアプリで以前に設定されたサービスは、そのアプリがその後、サードパーティーの OAuth アクセスが無効になった Enterprise Team に移動された場合は中断されるおそれがあります。
一部のサードパーティーアドオンは OAuth を使用しているため、アドオン制御の設定には関係なく、ブロックされる可能性があります。
Spaces (Space)
このタブには、Heroku Private Space が一覧表示されます。Create a Space
(Space の作成) ボタンをクリックすると Space を作成できます。
各 Heroku Private Space には、アドオンクレジットで月額 1000 ドルの費用 (秒単位の従量課金) が発生します。
同じ Enterprise Account 内の別の Enterprise Team に Space を移動することもできます。移動を行うユーザーは、両方の Enterprise Team の “管理者” であるか、または会社の Enterprise Account の “管理” アクセス許可を持っている必要があります。Space を転送するに、は、その Settings
(設定) タブに移動し、移動先の Enterprise Team を Space Ownership
(Space の所有権) セクションから探します。
Space を移動すると、その Space の内部にあるアプリのみが新しい Enterprise Team に移動します。Space の内部と外部の両方にアプリを含むパイプラインがある場合は、Space の内部にあるアプリのみが新しい Enterprise Team に移動します。パイプラインは、その Space の内部にないアプリと共に古い Enterprise Team に残ります。
Access (アクセス)
Access
(アクセス) タブには、Enterprise Team のすべてのユーザーが一覧表示されます。
Enterprise Team がプロビジョニングされた時点では、ユーザーは 1 人 (チームをリクエストした管理者ユーザー) だけです。この最初の管理者が、他のユーザーをチームに追加したり、適切なアクセス権をユーザーに付与したりできます。Enterprise Team のメンバー数の上限は 500 人です。
管理者、メンバー、閲覧者、共同作業者の各ロール
Enterprise Team のユーザーは、管理者、メンバー、閲覧者、または共同作業者のいずれかです。
管理者ユーザーは、Enterprise Team のメンバーシップを制御します。また、請求情報を表示したり、チームが所有するすべてのアプリに対する任意のアクションを実行したりできます。管理者ユーザーは次のことができます。
- Enterprise Team のすべてのアプリにアクセスする
- Enterprise Team のユーザーを追加、削除、変更する
- Enterprise Team 全体のリソース使用量を表示する
- Enterprise Team の請求書と請求を管理する
- Enterprise Team の名前を変更する
- Enterprise Team のアプリを移動、作成、削除する
支出、開発プロセス、セキュリティの状態に説明責任のあるユーザーには通常、管理者ロールが割り当てられます。管理者ユーザーを追加できるのは既存の管理者だけです。Enterprise Team には少なくとも 1 人の管理者ユーザーが必要です。このルールを適用するために、Enterprise Team の最後の管理者は削除できません。
メンバーユーザーを追加できるのは Enterprise Team の管理者だけです。メンバーロールを割り当てられたユーザーは、Enterprise Team 内のすべてのアプリへの読み取り専用アクセスが許可されます。アプリ単位で追加のアクセスの許可を得ることができます。メンバーは次のことができます。
- Enterprise Team 内のすべてのアプリを一覧表示する
- Enterprise Team の管理者とメンバーを表示する
- Enterprise Team のリソースを表示する
- 個人のアプリを Enterprise Team に移動する
- Enterprise Team でアプリを作成する
メンバーロールのユーザーは、すべてのアプリを表示し、各アプリの基本情報を確認することができます。デフォルトでは、アプリに対して他のどの操作も実行できません。メンバーロールが特定のアプリに対して開発および運用タスクを実行できるようにするには、このロールのユーザーにアプリごとに追加のアクセス許可を付与しておく必要があります。アプリに対する管理アクセス許可を持つメンバー (管理者を含む) は、他のメンバーに追加のアクセス許可を付与することができます。
メンバーロールのユーザーは、Enterprise Team 内でアプリを作成したり、Enterprise Team にアプリを移動したりできます。メンバーは、自分が作成したアプリに対してはすべてのアクセス許可を自動的に獲得します。また、他のメンバーには、そのアプリに対する特定のアクセス許可を付与することができます。メンバーロールは、アプリケーションに携わっている組織内の開発者に割り当てるのが一般的です。
閲覧者は、ユーザーがアプリとパイプライン、Space、ユーザー (Access
(アクセス) タブ)、リソースを表示できるようにする制限されたロールです。
共同作業者ユーザーは Enterprise Team に属していませんが、アプリ固有のアクセス許可が付与されています。共同作業者ユーザーは、次のことはできません。
- Enterprise Team に属する他のアプリを一覧表示またはアクセスする
- Enterprise Team ユーザーの一覧を表示する
- アプリを作成または Enterprise Team に移動する
Enterprise Team のすべてのアプリを表示させるまでは、信頼されていないサードパーティーの共同作業者に、特定のアプリに対するアクセス許可を付与できます。それらの共同作業者を Enterprise Team に追加したり、Enterprise Team のロールを割り当てたりする必要はありません。たとえば、特定のプロジェクトに割り当てられた外注先の開発者には、そのプロジェクトの一部であるアプリへのアクセスのみを許可できます。
特定のアプリに対するアクセス許可をメンバーとチーム以外のメンバーにどのように付与できるかについての詳細は、「Enterprise Teams でのアプリアクセス許可の使用」を参照してください。ロールごとに付与される機能についての詳細は、「Enterprise Team のアクセス許可と許可されるアクション」を参照してください。
ユーザーの追加または削除、アクセス許可の編集
Enterprise Team Dashboard の Access
(アクセス) タブからユーザーの追加と管理ができます。アクセス許可を編集、またはユーザーを削除するには、右端の列にある小さなペンを選択します。新しいユーザーを追加するには、Add User
(ユーザーの追加) ボタンを選択します。
HerokuCLI を使用してユーザーを管理することもできます。たとえば、新しい Enterprise Team メンバーを追加するには、次のようにします。
$ heroku members:add joe@acme.com --org acme-widgets
Adding joe@acme.com as member to organization acme-widgets... done
同じコマンドと --role
フラグを使用して、管理者ユーザーを追加します。
$ heroku members:add joe@acme.com --org acme-widgets --role admin
Adding joe@acme.com as admin to organization acme-widgets... done
Enterprise Team 以外のユーザー (共同作業者) は、そのアプリレベルのアクセスのため、異なるコマンドが必要です。この例では、"acme-website" アプリの共同作業者として、"表示" アクセス許可のみを持つ “jill@creativeinc.com” を追加しています。Heroku Organization でのアプリ権限についての詳細は、「App Privileges in Heroku Organizations」(Heroku Organization でのアプリ権限) を参照してください。
$ heroku access:add jill@creativeinc.com --app acme-website --permissions view
Adding jill@creativeinc.com to acme-website as collaborator... done
Enterprise Team からの自分自身の削除
Enterprise Team のユーザーまたは共同作業者は、Enterprise Team から自分自身を削除することができます。削除の方法は、ロールによって異なります。"管理者"、"メンバー"、または “閲覧者” である場合は、Enterprise Team の Access
(アクセス) タブを使用して、または CLI から自分自身を削除できます。
$ heroku members:remove --team example-team email@example.com
最後に残った管理者である場合は、Enterprise Team を離れることができません。自分自身を削除するには、事前に別のユーザーに “管理者” ロールを割り当てておく必要があります。
チームが所有する何らかのアプリの共同作業者である場合、チームとの関連付けを解除するには、各アプリから自分自身を削除する必要があります。共同作業者は、技術的には Enterprise Team のメンバーではないため、Access
(アクセス) タブを使用して自分自身を削除することはできません。
次の例では、my-app-1
と my-app-2
という名前の 2 つのアプリの共同作業者であることを前提としています。
$ heroku access:remove -a my-app-1 email@example.com
$ heroku access:remove -a my-app-2 email@example.com
MFA と SSO のステータス
多要素認証は、Heroku プラットフォームの必須のセキュリティ機能です。ユーザーは自分のアカウントで MFA を設定するように求められ、そのユーザー名とパスワードに加えて、2 つ以上の確認要素を使用してログオンする必要があります。
ユーザーは、個々のアカウントで MFA を管理することができます。ユーザーが Enterprise Team に属している場合、管理者やその他のメンバーは MFA ステータスを監視し、セキュリティおよびガバナンスポリシーへのコンプライアンスを確保できます。
管理者は、Heroku に任意の ID プロバイダー (IdP) を設定した後にユーザーに対してシングルサインオン (SSO) を有効にし、Enterprise Team の Settings
タブで SSO ステータスを表示できます。SSO が有効になっている場合、管理者は、設定された IdP を使用して MFA を強制できます。
Enterprise Team の Access
タブには、Heroku アカウントに MFA または SSO を使用するユーザーが示されます。ステータスに変更があると、すぐにステータスが更新されます。ユーザーごとに表示されたステータスの先までスクロールすると、詳細が表示されます。
Enterprise Team の管理者は、次を行うことにより、コンプライアンスを確保し、そのセキュリティの安定を維持できます。
- チームからのユーザーの削除
- ユーザーロールの変更
- 機密性が高くないアプリへのユーザーの制限
SSO がサードパーティーの IdP で設定されている場合、Heroku の MFA ステータスの可視性は制限されます。MFA が IdP によって強制されていることを確認してください。
Resources (リソース)
Enterprise Team 内のすべてのアプリケーションによって使用されるすべてのリソースを一覧表示します。
Settings (設定)
Settings
(設定) タブを使用して、次のことを行います。
- Enterprise Team の名前を変更する
- SSO を設定する
- デフォルトを “メンバー” から変更する。新しいユーザーには、新しいデフォルトのアクセス許可が割り当てられます。
- Enterprise Team のアプリで使用できるアドオンを制御する
- アプリの一括移動を使用して複数のアプリを Enterprise Team に移動する。個人のアカウントから Enterprise Team アカウントに移行された Eco dyno は、自動的に Standard-1X にアップグレードされます。
- OAuth を経由したアプリへのアクセスを制限する
- サポートチケットを作成して Enterprise Team の削除を依頼する
次のステップ
Enterprise Team の開発と管理に関する詳細を学習します。