# GROWI SSO ミーティング議事録

日時: 2020/3/3(火)

# アジェンダ by Sayaka

## SSO

- 一つの認証メソッドを選択していた時に、オートリダイレクトを実装したい。または実装してほしいと考えている。
    - GROWIにログインするときに Keycloak のログイン画面なくログインしたい
    - Primary な認証に飛ぶのが良い

- 設計思想としての疑問
    - どのように実装がすることがよいか。1つの認証につき選択肢を設けるべきか、またはセキュリティ設定として、リダイレクト有効化ボタンと、プルダウンとして選択するようにするべきなのか。
        - 管理画面のUIは拘らない、primaryに関する議論が先(yuki)
        - 前提としてオートリダイレクト機能はオプションとして有効・無効を選べるようにしたい
        - Primary 認証を設定できるようにした上で、それを優先して何か問題があるか？ → ひとまずなさそう
        - Primary 認証以外を選べるようにした方が良いか？ → どういうケースだとそんな認証をしたくなるのだろう？(管理者が特殊なログイン方法を知っている場合)
- 現状把握
    - SAMLやOIDC認証は現状、一つ選択してもボタンがある状態で、オートリダイレクトはない。
    - growiとしてはSAML以外に複数外部ログイン対応しているので、どう設定や設計するとよいか悩ましい
- 発展的実装について
    - もしオートリダイレクトを実装する場合、特殊なhttpヘッダーを用いてGrowi側単体でBasic認証ができるようにしたほうが良いとwadahiroさんからアドバイスをもらった
    - 例； keycloakのIdentity Brokeringだと、確かデフォルトのIdPを設定しつつ、idp_hintみたいなクエリパラメータ付きでGETアクセス飛んできたらそっち優先して切り替える、みたいな実装がされてたかと。同じような感じがいいかもです。
        - 同じという意味合いというのは、デフォルトIDPはあるけどGrowi側でidp_hintみたいなのをつける形。
        - 理由：管理者などが直接メンテするため。

## 問題提起っぽいこと
- 現状把握
    - 現在ID/Pass認証、LDAP認証、SAML認証、OIDC認証、Basic認証、Google認証、GitHub認証、Twitter認証、Facebook認証(TBD) があり、将来的に認証の管理をしていくことになると、コードの管理も難しくなるかもしれない
        - keycloak など内部の開発者も大変
- 今後の方針として提案
    - 認証プロバイダー(IDP)に任せられるものは任せたほうがいいのかもしれないという点がある。理由はkeycloakなどの認証2ファクター認証の実装が容易であり、SAML認証、OIDC認証, Google認証、GitHub認証、Twitter認証、Facebook認証(TBD) あたりはIDPに任せたほうがコード的にシンプルになりうるのではないかと考えています。豊富な機能があるのはとても良いことなのですが、もしかすると、集中と選択をしてIDPに任せたほうがいいかもしれないと思いました。
    - いま、それをいって何をという部分もあると思いますがあくまで問題提起として聞いてみたいことです。
    - GROWI開発者内部から問題提起が上がることもなかったので、ご意見いただけてうれしいです！
- サービス提供におけるセキュリティについて
    - サービスとして提供している部分について、これは将来像の案ですが、オプショナルとして、もちろん、Googleアカウントであればもう既に多要素認証は可能なので、不要なのかもしれませんが、もしなければつけてもいいかなと思ったりしました。

## ユーザーの皆さんに質問
- 皆さんがどういう風に認証の種類使われているかも伺いたい。
    - .cloud でどの認証機構がどの割合で使われているか追ってない → 見てみよう(規約にも反しないだろう)
    - WESEEK内部ではもともと用途(利用者毎に)個別にGROWIを立ててLDAP認証していたが、最近 GROWI.cloud へ移行を進めて keycloak を挟むようにしている

# 認証周り以外で痒いところに手が届かないことは？...
- 担当に分かれていて、sayaka さんはセキュリティ担当(SSO移行担当)なのでわかるのはそのあたり
- 強いて挙げるならセキュリティ設定画面で、更新されているかどうか分かりづらい点くらい
    - GROWI開発状況としては、設定画面の React 化をまず進めているところです
- issue に挙げている SAML の SHA が弱い？(よく聞こえなかった) 件
- external アカウントと GROWI アカウントの紐付けが LDAP しかできない
    - 現状: LDAP アカウントでログイン → GROWI アカウント紐付け

---

## Page Navigation

- Canonical URL: https://dev.growi.org/Web会議室/20200303GROWI_SSO%20ミーティング
- Permalink: https://dev.growi.org/5e5e003e08a0240048f45c8b
- Parent: [Web会議室](/5cefb480b2741f003e99e8ed.md)
- Children: 0 total
- Total descendants: 0
- Siblings: 49 of 77 total (28 more not shown; see the page list API below for the full listing)
  - [20190507_ユーザー権限](/5cd13ddc19d48b0041400f4f.md)
  - [20190508_ExternalGroup実装案](/5cd3b02d091bdc00486b2f42.md)
  - [20190514_growi本体のi18n対応](/5cdba7c858e536003e600d2e.md)
  - [20191105_Graceful_Shutdown](/5dc0841e6a6f6c00451c001c.md)
  - [20200310_GlobalNotification改善方針](/5e65cbe6fabb520048375b8d.md)
  - [20200408_ブラウザ上のユーザーキャッシュ改善](/5e8d6bb76eb1f40048f15e7c.md)
  - [20200415_checkboxとswitchの使い分け](/5e9669ef26fe880048818325.md)
  - [20200507_デザイン会議](/5eb3d8bad9aa840049ac469d.md)
  - [20200518_デザイン会議](/5ec25c27f973560048b488eb.md)
  - [20200519_Dev4.0.0リリース会議](/5ec37dc0d564590049128d51.md)
  - [20200611_Slackbot_with_proxy_において複数GROWIがmodalを開く場合の挙動の検討](/60c2ed8d16d1d700499030cc.md)
  - [20200617_デザイン棚卸し会議](/5ee9e65f55b35b004868b07c.md)
  - [20200706_ページのBulk出力機能](/5ed0cc5dee4bc900481b55ea.md)
  - [20201127_ワンタイムURL](/5fc081f066f668004809e402.md)
  - [20201216_PageHistoryの最下段の差分が表示されない問題](/5fd9e63121ebf10048db6a4a.md)
  - [20210128_Component設計(v5.x 版)](/6012c0e836a5d4004841ba81.md)
  - [20210325_再起的な移動・複製で起こる問題について](/605c1134c11be80048edf4f1.md)
  - [20210608_同時編集機能付きエディタ考](/5cfe2858c736ef004312fa08.md)
  - [20210608_新施策検討会議](/60beec24d3095c00492610ff.md)
  - [20210610_脆弱性_プレゼント企画](/60c1af36ac882c00494c3b3f.md)
  - [20210614_開発チームからの悩みを共有する会](/60c6ddaee7e18a0049709bbb.md)
  - [20210622_URLのエンコーディングについて](/60d15eff4519360049ea4ef0.md)
  - [20210701_officialbot_動作確認](/60dd358295b42f00492afa56.md)
  - [20210707_toggetterコマンド要件策定](/60e518e7d6ed770049d085e1.md)
  - [20210709_toggetterコマンド要件策定](/60e7be79ce96810049bc4100.md)
  - [20210719_togettercommandの障壁を検討する](/60f4fd1ef7ea2b005128e2c3.md)
  - [20210721_ストーリー設計](/60f66480f16063005273a9a4.md)
  - [20210803_  OpenWikiのOGPを表示できるようにする](/6108e608f508da00510b41a9.md)
  - [20210806_TextLint仕様検討](/610d183f474cd10051c5b522.md)
  - [20210902](/6130afcd6940de0051899a68.md)
  - [20210906_Productionへのassert導入メモ](/6135123691096100511e4d22.md)
  - [20211008_添付ファイル内の全文検索](/615f9c0874b84442a6928a9a.md)
  - [20211224_アクセストークン拡張](/61c5502334ebb98c673d340b.md)
  - [20211224_検索_pagetree_ストーリー棚卸](/61c5808234ebb98c673d98b1.md)
  - [20220111_脆弱性対応](/61dd568920ad6b99c50646a0.md)
  - [20220112_VRTで撮りたいスクリーンショットメモ](/61dedb5e47136624e9b5bed1.md)
  - [20220315_issue-5409](/623009e98469ca4087435498.md)
  - [20220325_編集画面改善施策プランニング会議](/623d67e06fabaab0cd333e45.md)
  - [20220411_GROWI_Docs_棚卸し](/62341b887abe595637091e09.md)
  - [20220510_TypeScript化](/6279e91bd5f269990fb58844.md)
  - [20220620_TypeScript4.2から4.6へのバージョンアップ](/62b0756e136b9852add5b9fb.md)
  - [20220622_issue-3597 修正案](/60d165de4519360049ea51cf.md)
  - [20220623_TypeScript化に関する方針決め](/62b40e98787452ec2d868741.md)
  - [20220711_editデザイン共有会](/62cbcb5f26173a0cf355af1b.md)
  - [20221014_ライブラリアップデートレビュー会](/63491b4fb9a79213018836ac.md)
  - [20221021_next化認識合わせ](/635219fafa65f8ac622d0757.md)
  - [20221125_markdown_xss_v6](/63807d7af21dbeeef1f1a32a.md)
  - [20221227_ブックマークフォルダ施策(Gruneさん)](/63aad4544dc1c1e4bd6f11d6.md)
  - [2022_1208 useTermNumberManager について考える](/639188813887047c18843a78.md)
- Last updated: 2023-08-25T03:07:07.269Z by kosei-n
- Full page listing (all children regardless of count): https://dev.growi.org/_api/v3/page-listing/children?id=5e5e003e08a0240048f45c8b
