質問: 会員管理の必要な Web サービスを企画しています。 今まで、幾つかのサービスで会員管理をしてきましたが、OSS のパッケージ内の機能や、フレームワークのライブラリで実装しました。 昨今の Web サービスでは、会員管理(と言うか認証)をクラウドサービ(外部)に流れがあると思いますが、このメリット/デメリット に関して、先行者にお聞きしたいと質問をあげました。 会員の管理には、使用する Web サービスにもよりますが、ざっくり以下のような機能が必要と考えます。 ・会員登録/退会処理 ・認証 ・活動ロギング ・会員情報の整理 ・会員属性からのマーケティング この内、Firebase を例に取ると、会員登録と認証が提供されることになると思います。 その他の機能は、自作することになるのだと思いますが実務上のメリット/デメリットをご教示いただけないでしょうか? 例えば、ログイン認証を Firebase のものと置き換えることにより メリット → 認証システムは容易に構築できる デメリット → OSSパッケージとの親和性を気にしなくてはならず、必ずしも全体として見た時、工数削減にならない とか。 企画段階なので、プロダクトを絞った形での具体的な質問となっておらず恐縮ですが、よろしくお願いいたします。
回答: ID 管理機能の外部依存については、開発コストだけの問題ではありません。どちらかというと、ユーザの秘密情報管理や属性保証をどの程度アウトソースできるかという業務コストの問題だと思います。 * 利用者にシングルサインオンの利便性をもたらす可能性がある * ヘルプデスクで「退会します」、「パスワード忘れました」などの対応をする必要がなく業務コストを削減できる * BtoB であれば、所属組織に属性の保証をしてもらうことができる * BtoC であれば、なりすまし、属性の偽装、多重ID取得、名寄せに関して、それらを防ぐための仕組みや業務負担が必要である(逆に言うと、もし、その要件がないのであれば、開発コスト、業務コストともにかなり減らすことができる)