今日、これまでに最も要望が多かったアカウント機能の一つをリリースします。Team Workspacesです。これでShifterアカウントにチームメイトを招待し、それぞれに実際の役割に合ったロールを与え、同じ人が複数のワークスペースに同時に所属できるようになります。ログインを切り替える手間はありません。
お急ぎの方向けに要点をまとめます。パネルのTeamページを開き、招待を送り、ロールを選べば完了です。既存のShifterユーザーはワンクリックで参加できます。新規のユーザーはマジックリンクでサインアップするだけで、パスワードを覚える必要はありません。サイドバーの単一のドロップダウンから、所属するどのワークスペースにも切り替えられます。
もう少し詳しく知りたい方向けに、何を構築したのか、その理由を説明します。
なぜこれを構築したのか
長年、Shifterの典型的なアカウントは、一人、一つのメール、一つのログインという形でした。これは、スクレイパーを動かす一人の開発者や、SERPパイプラインを管理する一人の運用エンジニアには問題なく機能します。しかし、二人以上がそのアカウントに触れる必要が生じた瞬間、機能しなくなります。
私たちが繰り返し耳にしていたパターンは次の通りです。
スクレイパーを構築する開発者は、会社のクレジットカードにアクセスする必要はないはずです。請求書を承認する人は、業務を行うためにISPプロキシが何であるかを知る必要はないはずです。3社のクライアントを担当するフリーランスのエンジニアは、それぞれにSlack経由でログインを共有してもらうよう頼む必要はないはずです。複数のブランドのキャンペーンを運営する代理店は、それらすべてのトラフィックを一つのメンバーシップに統合すべきではありません。
ログイン共有はこれらの問題を覆い隠すだけで、新たな問題を生み出します。監査の記録が残りません。誰かが退職した際にアクセスを削除する方法がありません。そしてパスワードが変更されると、古いパスワードを持つ全員がサポートに電話をかけてきます。
Team Workspacesはこれらすべてを解決し、なおかつ単純なケースを難しくすることはありません。
あなたにとって何が変わるのか
これまでアカウントの唯一のユーザーだった場合、初日には何も変わりません。既存のアカウントはPersonalワークスペースと呼ばれるようになります。それは以前と全く同じ、あなたのものであり、一つ新しい機能が加わります。人を招待できるようになるのです。
招待した瞬間、モデルが拡張されます。あなたのアカウントはワークスペースになり、招待した人はメンバーになり、それぞれが何を見て何をできるかを制御するロールを持つようになります。
三つのロール
私たちは意図的にこれを三段階に絞りました。より細かい粒度はスライドデッキでは見栄えが良いものですが、実際には誰も覚えていない権限マトリクスになってしまいます。
Viewer。 読み取り専用です。メンバーシップ、トラフィック、請求書を確認できます。注文カタログを閲覧して何が利用可能かを見ることはできますが、購入や変更はできません。これは、使用状況のトレンドを確認する必要があるアナリスト、支出の内容と場所を確認したいCFO、または監査を行うセキュリティレビュアーに適したロールです。
Billing。 Viewerができることに加え、資金の追加、請求書の支払い、新しいプランの購入、既存プランのアップグレードが可能です。Billingは購入以外のメンバーシップ管理やチームメンバーの変更はできません。これは会社のカードを保有する人向けのロールです。
Admin。 Billingができることに加え、完全なメンバーシップ管理(キャンセル、切り替え、アップグレード、設定変更)と完全なチーム管理(招待、削除、ロール変更)が可能です。ワークスペースの所有者は自分のワークスペースにおいて暗黙的にAdminであり、自分自身をロックアウトすることは決してありません。
すべての制限はUI(Viewerには「Pay Now」ボタンがクリック可能であるかのように誤って表示されず、試みても明確なトースト通知が表示されます)とサーバーの両方で強制されます。誤ったロールで制限されたエンドポイントを呼び出すと、403が返され、500やサイレントな成功にはなりません。
マルチワークスペース、マルチアカウントではない
これは私たちが最も誇りに思っている設計の部分です。正しく実現するのに最も時間がかかった部分だからです。ユーザーは一つのワークスペースに閉じ込められることはありません。同じメールアドレスが、自分のPersonalワークスペースの所有者であり、あるクライアントのワークスペースではViewerであり、別のワークスペースではBillingユーザーであることができます。
そのために三つのログインを維持したり、コンテキストを切り替えるためにサインアウト・サインインを繰り返すことを求めたくありませんでした。そこでサイドバーには、プロフィールメニューの上にワークスペース切り替え機能があります。上方向に開き、所属するすべてのワークスペース(Personalが最初、その後残り)を一覧表示し、コンテキストの切り替えはワンクリックで完了します。このドロップダウンは実際に複数のワークスペースに所属している場合にのみ表示されるため、単独ユーザーには決して表示されません。
アクティブなワークスペースはセッション内に保持されます。すべてのリクエストは、あなたが依然としてそのワークスペースに所属しているかを再検証します。ワークスペースの所有者がそのコンテキストで作業中にあなたを削除した場合、次のページ読み込みであなたはPersonalワークスペースに戻され、その理由が通知されます。取り消されたメンバーシップよりセッションが長く続くことは決してありません。
どのワークスペース内でも、すべてがそのワークスペースにスコープされます。表示されるプラン、ウォレットの残高、請求書、チームリスト、メンバーシップ、そのすべてです。切り替えのみがコンテキストを変更し、それは一度にすべてを変更します。誤ったアカウントから請求書を支払ってしまうような状況は存在しません。
招待する方法
管理したいワークスペースのTeamページを開きます。メールアドレスを入力し、ロールを選び、送信します。
そのメールアドレスが既にShifterユーザーのものであれば、次回サインインする際にワンクリックの「Join」ボタンが表示されます。彼らは既存のアカウントと既存のPersonalワークスペースを維持しつつ、あなたのワークスペースのメンバーにもなります。新しいアカウントは作成されません。パスワードのリセットもありません。再オンボーディングもありません。
そのメールアドレスがShifterに全く新規であれば、招待は簡略化されたサインアッププロセスになります。名のみ必須、姓は任意、マジックリンクでのログイン、覚えたり更新したりするパスワードはありません。マジックリンクを確認した瞬間、そのユーザーはあなたのワークスペースに入り、さらに後で切り替えられる自分専用のPersonalワークスペースも取得します。
明らかに不合理な操作は自動的にブロックされます。自分自身を招待することはできず、既にメンバーである人を招待することはできず、ワークスペースあたり10席の上限があります。(構築しているものに10席で足りない場合は、hi@shifter.ioにご連絡ください。これは意図的に緩やかな上限です。)
これによって可能になるパターン
ステージング環境で既に人々が設定しているワークフローのいくつかを紹介します。
財務専用アクセス。 エンジニアリングチームがAdminとしてワークスペースを所有します。CFOはBillingとして招待されます。CFOはウォレットに資金を投入し、すべての請求書を確認し、未払いのものを支払い、エンジニアリングチームの誰も中断させることなく支出に関する自分の疑問に答えることができます。
セキュリティレビューのための監査アクセス。 レビュアーを契約期間中Viewerとして招待します。彼らは監査に必要なものだけを確認します。契約が終了したら、ワンクリックで削除すれば、そのアクセスは即座に失われます。開いていたバックグラウンドのセッションも含めてです。
複数のクライアントワークスペースを運営する代理店。 各クライアントが自分のワークスペースを所有し、請求書はそれぞれのウォレットに届きます。代理店のプロジェクトリードは一つのログインで、すべてにAdminとして追加されます。クライアントのコンテキスト間の切り替えはサイドバーでワンクリックです。プランがワークスペースを越えることがないため、トラフィックがワークスペース間で混同されることは決してありません。
複数のクライアントを担当するフリーランサー。 逆のパターンです。フリーランサーは各クライアントのワークスペースにBillingまたはAdminユーザーとして追加されます。クライアントはアカウント、プラン、請求書の所有権を保持します。契約が終了すると、クライアントはフリーランサーを削除し、その関係はきれいに終わります。
個人的な実験と会社のトラフィックを分離する。 同じ人が二つのワークスペースを持ちます。夜間や週末用のPersonal。本番のスクレイパー用の会社ワークスペースです。残高は別々、請求書は別々、プランは別々です。ログインは一つ、切り替えはサイドバーでのワンクリックです。
知っておくべきいくつかの詳細
画面からは明らかではないものの、実際に使う際に重要になるいくつかの仕組みがあります。
-
ワークスペースの所有者は誰にも削除されません。所有者は他のAdminをダウングレードまたは削除できますが、ワークスペース自体は元の作成者に属します。会社が何らかの理由で所有権を移転する必要がある場合、リクエストに応じて対応できますので、お問い合わせください。
-
アカウントの削除は両方向に連鎖します。メンバーのアカウントが削除された場合、他のワークスペースにおけるそのメンバーシップは整理されます。ワークスペースの所有者が自分のアカウントを削除した場合、そのワークスペースとそのメンバーシップも一緒に削除されます。これはアカウント削除フローで表示されるため、予期せぬ形で何かが起こることはありません。
-
ロールはワークスペースにスコープされ、グローバルではありません。あなたはShifter全体で「Billingユーザー」というわけではありません。あなたはワークスペースXにおいてBillingユーザーです。別のワークスペースではViewerかもしれませんし、所有者かもしれません。現在のコンテキストで持つロールが常に強制され、切り替え画面に常に表示されます。
-
プランはワークスペース間を移動しません。ワークスペースAで購入されたレジデンシャルプランはワークスペースAの資産であり、そこに留まります。プランを別のワークスペースに属させたい場合は、そのワークスペースで購入してください。
どこで見つけられるか
これは既に全員に対して有効になっており、オプトインは不要です。パネルにサインインし、サイドバーの「Team」を探して、人を招待し始めてください。
Shifterを初めて使い、最初のワークスペースを適切に設定したい場合、レジデンシャルプロキシプランとISPプランが通常の出発点です。プランはワークスペースの中に入り、チームはその周りに構成されます。
私たちはレジデンシャルゲートウェイを再構築して以来、これをリリースしたいと考えていました。というのも、アカウントレベルの機能は、基盤となる製品がボトルネックでなくなって初めて本当に意味を持つからです。今、それが実現し、そして今、Team Workspacesがここにあります。もし私たちが見落としている権限の形や、あなたのチームにぴったり合わないロールの分割があれば、ご連絡ください。私たちは意図的に対象範囲を小さく保ち、それを継続的に発展させられるようにしています。