コンテンツにスキップ

Brands & OAuth

Brand は、organization が同じ公開 identity と OAuth 設定を複数の workspace、Channel で再利用するための機能です。公開体験をデフォルトの workspace identity ではなく、特定の事業または顧客向けブランドとして提供する場合に使います。

Brand がまだない時の empty state

三つの接続関係を理解する

ブランド付き login を動かすには、次の三つの関係が必要です。

  1. Organization が Brand と OAuth provider を所有する。
  2. Workspace にその Brand を割り当てる。
  3. Workspace 内の Web Channel に OAuth provider を bind する。

Brand を作成しただけでは workspace や Channel は変わりません。三つを接続し、公開済み login flow をテストしてください。

先に provider を準備する

現在の Brand form は Google OAuth に対応しています。Codeer で設定する前に、次を準備します。

  • 正しい環境用の Google OAuth client
  • Client ID と Client Secret
  • その Codeer deployment 用に指定された正確な authorized redirect URI
  • 承認済み scopes。通常の identity flow では profileemail を使います。

Redirect URI は環境ごとに異なります。preview や local URL を production にコピーせず、deployment 管理者から正確な値を入手してください。Scope は体験に必要なものだけを要求します。

Step 1: Brand を作成する

Organization Settings → Brands を開き、新規作成 をクリックして Brand name と description を入力します。

Create Brand モーダル

作成後、Brand を開いて logo を upload します。現在は 1 MB 以下の JPEG または PNG に対応しています。

Step 2: Brand を workspace に割り当てる

Organization Settings → Workspaces を開き、対象 workspace を編集して Brand を選びます。Brand detail page には、その Brand を使用している workspaces が表示されます。

複数 workspace で同じ Brand を使うのは、公開 identity と認証管理の責任を共有する場合だけにしてください。

Step 3: Google OAuth provider を追加する

Brand を開き、OAuth Providers追加 をクリックします。

項目 入力内容
Provider Type Google
Display Name Google OAuth for Production のように環境と用途を識別できる名前
Client ID この環境の Google OAuth client ID
Client Secret provider 作成時は必須
Scopes profileemail など、承認済み scope を一つずつ追加

Provider の編集時に Client Secret を空欄にすると、既存 secret が維持されます。Credential を rotate する時だけ新しい値を入力します。

Step 4: Provider を Web Channel に bind する

対象 workspace の Channels から Web Channel を開き、OAuth section で Brand の provider を追加します。一つの Channel に、同じ provider type を二つ bind することはできません。

Brand と provider の管理には organization connection-management permission が必要です。Channel で provider を追加・削除するには workspace resource-management permission が必要です。

Access を広げる前にテストする

まだ sign in していない account で次を確認します。

  • 想定した公開 Channel URL から login が始まる
  • Google に正しい app identity と scopes が表示される
  • callback 後に正しい Channel へ戻る
  • sign in 後に想定した workspace access state になる
  • 拒否または失敗した login で保護された体験へ入れない

OAuth provider の追加、rotate、unbind、削除は access change として扱います。Channel を広く共有する前に再テストしてください。

削除すると利用中の関係が壊れる可能性があります

OAuth provider を削除すると Client Channels との関係が削除されます。Brand を削除すると、使用中の workspaces から割り当てが外れます。削除前に依存関係を解消または置き換えてください。

関連ガイド