r/selfhosted🔥 99
💬 102

認証プロバイダーで全アプリを統合管理!運用をスマートにする「認証の一元化」戦略

sajkoterrapefft
9日前

ディスカッション (101件)

0
sajkoterrapefftOP👍 99
9日前

皆さん、認証プロバイダーをハブにして全アプリの認証を統合する構成、試したことはありますか?ホストしているあらゆるアプリの認証を一つの傘下にまとめるというアイデアです。IaC(Infrastructure as Code)で管理さえできれば、非常に柔軟な運用が可能になります。オープンソースプロジェクトは流行り廃りが激しく、時にはコミュニティに対して非友好的になることだってありますよね。そんな時、Keycloakのような共通の認証プロバイダーを導入しておけば、アプリを入れ替えてもユーザー情報を再作成する必要がありません。例えばNextcloudのような巨大なモノリスを、特定の機能に特化した小さなプロジェクト群へ移行する際も、認証が統一されていれば非常にスムーズです。この手法を実際に運用している方は、どんな体験をしていますか?現在どんなアプリを接続しているかぜひ教えてください。私自身はまだ本格的な深掘りはできていませんが、現状のラインナップは以下の通りです:・linkding ・immich ・grafana ・navidrome(未接続) ・joplin(未接続) ・vaultwarden(未接続)。まだ半分程度のアプリでしかKeycloakを活用できていませんが、趣味のプロジェクトや友人、地域のメイカースペース向けにRealmを分けて運用しており、十分にその恩恵を感じています。

1
asimovs-auditor
👍19日前

この投稿やプロジェクトでAIがどう使われたかを知りたいなら、このコメントへの返信を展開してみて。

2
_ttnk_
👍339日前

自分はバックエンドにLLDAPを使ったAutheliaを使ってる。今のところすごく快適。

3
bm401
👍59日前

同じく。自分もollama + openwebuiのスタックを追加したよ。OIDCの設定は2分もかからなかった。ドキュメントをコピペするだけ。

4
_ttnk_
👍58日前

それな。Autheliaのドキュメントにあるインテグレーションの章はすごく分かりやすい。

5
Electrical_Swim4312
👍28日前

Authelia + LLDAPの組み合わせに1票。

6
This_Complex2936
👍39日前

自分はPangolin SSOとしてPocketIDを使ってるよ。保護されてないNextcloudやImmich用にも使ってるけど、すごくいい感じ。

7
Other-Oven9343
👍28日前

自分も全く同じことしてるよ。最近は自分でアプリを開発することが増えてきたから、その要件として(SSO対応を)追加するようにしてる。

8
-ThreeHeadedMonkey-👍 94
9日前

自分はauthentikを使ってる。ただ、NavidromeがSSOをサポートしてないのが本当に気に入らない。回避策もひどいもんだよ。

9
useful_tool30
👍188日前

OIDCがないなら、forwardauthを使うのはどう?

10
-ThreeHeadedMonkey-
👍98日前

多分そうなんだけど、自分には使いこなすのが難しすぎる。ドキュメントも役に立たないし、本当に試してみたんだけどダメだった。あと、リバースプロキシ経由で追加すると、モバイルアプリが動かなくなる可能性が高いんだよね。

11
habys
👍28日前

navidromeってhttps接続かな?それとも独自のポート使ってる?独自のポートなら問題ないかもしれないね。

12
-ThreeHeadedMonkey-
👍18日前

どうだろうね。自分はそこまで辿り着けなかったな。提案された解決策を何時間もいじってみたけど、全然うまく動かなくてさ。

ちなみに、NPMでリバースプロキシを組んでqbittorrentとかを守ってるんだけど、なぜかNavidromeのログインをauthentikのヘッダーと接続させるのが異常に難しかったんだよね。

13
doubled112
👍58日前

APIエンドポイントのフォワード認証はバイパスできるよ。

ブラウザ上では自動ログインされるから、Navidrome内のパスワードがAPIキーみたいな役割になって、アプリでも使えるようになる。自分はそれ用にすごく長くてランダムなパスワードを作ったよ。

追記:まあ、めちゃくちゃな回避策の一つかもしれないけどね。

14
-ThreeHeadedMonkey-
👍18日前

提案の意味がよくわからないんだけど。

理論上はNavidromeのログインを完全に無効化して、Authentikの認証壁の裏に隠すことはできるよ。自分はqBittorrentでそれをやってる。

ただ、そうするとマルチユーザーアクセスができなくなるのが難点だね…

15
doubled112
👍38日前

https://www.navidrome.org/docs/usage/integration/authentication/#configuration

外部認証を有効にすると、Navidromeは受信リクエストのRemote-User HTTPヘッダーから認証済みユーザー名を取得する。ヘッダー名はExtAuth.UserHeader設定オプションで変更可能。

プロキシを設定して /rest/* URLへの認証をバイパスし、それらのリクエストはNavidrome側で認証を行うこともできる。

同じやり方でいけるはずだよ。NavidromeがRemote-Userヘッダーを読み取れるようになればマルチユーザーアクセスも維持できるし。Authentik側ではヘッダー名が違うかもしれないけどね。

それがうまくいったら、APIの認証をバイパスするルールを作成すればいい。

17
j-dev
👍108日前

それだとアプリが壊れると思うよ。でもカスタムヘッダーならいけるはず。

18
Material-Water-9610
👍28日前

ああ、自分の環境でもやったよ。でも一部のパスは除外しないとアプリが動かなくなるから気をつけて。

19
Ursa_Solaris
👍38日前

/rest エンドポイントでOIDCをバイパスできるようにすれば、Web版はOIDCで認証しつつ、Subsonic対応アプリはNavidromeで設定したパスワードで動くはずだよ。APIがOIDCスタックで保護されないという意味では理想的ではないけど、APIにはよくあることだしね。Navidromeのパスワードをユーザー設定可能なAPIキーとして扱うようなものだよ。これでユーザーはWeb版ではSSOを使って操作できるはずだし、それが一番の懸念点だったんだよね。

20
GreenDavidA
👍18日前

ああ、できる限りAuthentikをブループリントと一緒に使ってるよ。

21
miversen33
👍248日前

OIDCを使い始めると、その便利さがすぐ分かるよ。逆にnavidromeとかjellyfinみたいに、未対応の有名アプリにぶち当たった時にね。

22
emmaexe_
👍78日前

Jellyfinは対応してなかったっけ?確かプラグイン経由だった気がするけど。

23
miversen33
👍138日前

「今誰がログインしているか」みたいなコアかつクリティカルな機能は、サードパーティのプラグインに任せるべきじゃないでしょ。(https://github.com/9p4/jellyfin-plugin-sso )いつサポート終了になってもおかしくないしね。それにこれだとウェブでしか使えないし。Plexを本気で置き換えるなら、どこでもOIDCが使える状態じゃないとね。Plexはそれができてるんだから。

24
Eximo84
👍108日前

残念ながらそのプラグイン、アーカイブされちゃったんだよね。

25
emmaexe_
👍28日前

なるほど。

少なくともLDAPプラグインは公式でまだ使えるから、ないよりはマシだよね。

26
TheAdurn
👍58日前

君の投稿で初めて知ったわ。それは残念。今使ってるけど、Jellyfinが互換性を切った瞬間に(少し前にあったけど)もう終わりだな。

27
BudeVollPeople
8日前

少なくともldapはまだ使えるからな。

28
regypt
👍48日前

自分も全く同じ状況。自分以外が使うものをホストするならOIDCは必須だよね。みんなNavidromeやSubsonicがSpotifyの代替になるって言うけど、SSOがないと自分には無理。あと、AuthentikからPocketID/Tinyauthに乗り換えたんだけど、めちゃくちゃ快適。Authentikの機能の10%しかできないけど、たぶん自分が必要なのは5%くらいだしね。パスワードからパスキーへの移行は最高だよ。かなりおすすめ。

29
-ThreeHeadedMonkey-
👍38日前

PocketIDは最高だけど気をつけて。職場や他のパソコンからログインできなくなる可能性がある。自分の場合、Edgeだと大抵ハードウェアキーでのログインオプションは出るけど、パスキーやTOTPは許可されないことがあるんだ。

仕事用の端末や自宅の特定のPCでランダムに発生するんだけど、原因は結局わからずじまいで…

パスキー自体は素晴らしいけど、パスキーオンリーっていうのは使い勝手が悪いな。

パスワードやTOTPでログインできるなら自分もPocketIDに乗り換えるんだけど。

30
regypt
👍68日前

仕事用のPCではそんなこと起きたことないから、間違いなく企業のEdgeポリシーかなにかが影響してるね。まあメールコードでログインすることもできるはずだし、手間はかかるけど動くはずだよ。SMTPプロバイダーが必要になるから、smtp2goがおすすめ。あと、仕事用のPCから自分のホームラボにログインするなよ、バカめ😅

31
-ThreeHeadedMonkey-
👍18日前

なんでダメなの?仕事中にNextcloudのデータが必要なんだよ。どのみちPangolinの背後にあるし。

32
GolemancerVekk
👍18日前

個人のシステムと仕事のシステムを混ぜると、いろいろ面倒なことが起こるよ。会社のポリシー違反になったり、片方のマルウェアがもう片方に影響したり、仕事用PCで監視されたりとかね。

33
acdcfanbill
👍28日前

それな、自分もイライラするわ。たぶんSubsonic APIへの対応の名残なんじゃないか?

34
Nuuki9👍 61
9日前

そう、サービスが増えてくるとよくあるアプローチだね。注目すべきはOIDCサポート。今のアプリではそれがほぼ必須になってる。

2026年現在、これから始める人にはPocket-IDを強くおすすめするよ。Passkeyにのみ対応してるんだけど、これが「ユーザーにとって圧倒的に便利」かつ「極めてセキュア」という(非常に珍しい)両立を実現してるんだ。Pocket-ID自体も構築が簡単で見た目もいい。

自分も何年もAuthelia + LDAPを使ってたしAutheliaも大好きだけど、乗り換えたメリットはかなり大きかった。もう戻れないね。今37個のシステムやアプリでPocket-IDを使ってるよ。

35
byurhanbeyzat
👍169日前

PocketIDに一票。
最初はAutheliaにしようと思ったんだけど、サービス10個分を設定する手間を考えたら代替案を探す気になってね。PocketIDを見つけて試したけど、セットアップはめちゃくちゃ簡単だし、UI/UXもPasskey対応で優れてる。Autheliaとかに比べるとかなり軽量だよ。

36
FantasticLifeguard62
👍39日前

検証用にAutheliaとauthentikを基本SSO設定で入れてるけど、腰を据えてしっかり理解して記憶し続けるのがなかなか大変でね。PocketIDの方がずっと簡単そうだからチェックしてみるよ。

37
Nuuki9
👍29日前

AutheliaはForwardAuthみたいに認証システムのサポート範囲が広いけど、その分複雑になる。Pocket-IDがパスキー専用っていうのは(個人的には)強みだと思う。設定も体験も簡潔になるし、パスワードの管理に悩まされることが一生なくなるからね。

38
ShroomShroomBeepBeep
👍29日前

自分もAuthentikの設定でやる気が出なくて、2回諦めた経験があるよ。Pocket IDはめちゃくちゃ簡単で最高だった。

39
Bananz0
👍59日前

まだ始めたばかりだけど、Pocket IDは最高だね。サービスを追加すれば、ほぼ一瞬でみんながアクセスできるようになるんだから。大学で(ひどいやり方の)LDAPやOIDCをなんとなく見たことがある程度の初心者からの意見だけどね。

唯一気に入らないのは、Jellyfinがネイティブ対応してなくて、対応させてた唯一の拡張機能もアーカイブされちゃったことかな。

40
RaspberrySea9
👍49日前

Pocket IDは2回失敗して、パスキーを設定してたアプリから締め出されたことがある。100% Pocket IDのせいとは言い切れないし、去年のあの時はセットアップかDBの問題だったのかもしれないけど……何にせよ、今はCloudflareのアプリとポリシーを使う方が好みかな。

41
habys
👍18日前

面白いね!昨日ちょうどJellyfinでLDAPプラグインを使うためにLDAPのセットアップをしてて、だいぶ時間を食ったところだよ。面倒だったけど、とりあえずうまく動いてるみたい。

42
spartacle
👍28日前

OIDCをサポートしてないアプリはどうしてる?

43
Nuuki9
👍28日前

自分はCaddyでForwardAuthを使ってる。他の人だとtinyauthとか、似たようなソリューションでうまくいってるみたいだね。

44
JabARecCow
👍28日前

逆の意見も言っておくと、Ansibleですべてのサービスを構成したい自分としては、Pocket IDよりAutheliaの方がニーズに合ってるかな。最初はパスキーだけでいけるからPocket IDで始めたけど、結局IaC環境を完璧に構築したくてAutheliaに乗り換えたよ。

45
fixitchris
👍38日前

パスキーのみっていう制約が、見た目以上に仕事してるね。Autheliaで環境作ってた時は、柔軟すぎることが逆に問題になってた。結局半分がTOTP、2つがWebAuthn、みたいな状態になって、自分ですら新しいサービスを追加する時の手順がバラバラで混乱してたし。選択肢をあえて絞るプロバイダーの方が、信頼して導入しやすいよね。

46
henry_tennenbaum
👍28日前

セキュリティ面はどうなの?詳しい人による監査とかレビューってある?Authentikは一応ちゃんとした会社がバックについてるみたいだけど、実際のところどうなんだろうね。

47
AGuyInTheOZone
👍18日前

最初使い始めた時、PocketIDでちょっと躓いちゃったんだよね。完全に自分のミスなんだけど。とりあえずの繋ぎでTinyauthを使ってるよ。

48
guareber
👍28日前

「パスキーはユーザーにとって遥かに便利」という意見には全面的に同意しかねるな。特定のユースケースでは最高だけど、そうじゃない場面では最悪だよ。

49
Nuuki9
👍18日前

なるほどね、絶対的な言い方をするつもりはなかったよ。ただ、ユニークで強力なパスワードを管理するのは普通のユーザーには非常に難しいし、それが不要になるのは間違いなく大きなメリットだと思う。パスキーに短所がある状況があるのは間違いないけど、それらはあくまで例外的なケースで、大半の場合は最初からパスキーを採用する合理性があると思ってる。もちろん、自分にとってパスワードを使うのが合理的だと思えばそうすればいいさ。

50
TuneCompetitive2771
👍89日前

自分がauthentikを立てた唯一の理由は、家族や友人が自分のGoogleアカウントでサービスを使いやすくするためだよ。自分だけで使うものは、そのサービス自身の認証システム(だいたいシンプルなログインページか、認証なし)を使ってる。

まあ、彼らが自分のGmailのパスワードを忘れてそれが俺のトラブルになるまではうまく機能してるよ(Dani叔母さん、君のことだよ)

51
Time_Lord23
👍89日前

OIDC対応ならPocket ID、そうじゃなければTinyauthがいいよ。

52
brovaro
👍38日前

OIDC非対応のアプリについては、こんな感じでやるといいよ:

services:
  bento-pdf:
    image: ghcr.io/alam00000/bentopdf-simple:latest # 推奨
    # image: bentopdfteam/bentopdf:latest     # 代替: Docker Hub
    container_name: bento-pdf
    restart: unless-stopped
    #ports:
    #  - '40000:8080'
    networks:
      - bentopdf_net

  bento-pdf-oauth2-proxy:
    image: quay.io/oauth2-proxy/oauth2-proxy:latest
    container_name: bento-pdf-oauth2-proxy
    restart: unless-stopped
    command: --config=/oauth2-proxy.cfg
    volumes:
      - /srv/appdata/Docker/bento-pdf/oauth2-proxy.cfg:/oauth2-proxy.cfg:ro
    ports:
      - "40000:4180"
    networks:
      - bentopdf_net

networks:
  bentopdf_net:
    driver: bridge

そして .cfg ファイル:

########################################
# OIDC / PocketID
########################################

provider         = "oidc"
oidc_issuer_url  = "https://id.example.com"
client_id        = "id-from-pocketid"
client_secret    = "secret-from-pocketid"
redirect_url     = "https://pdf.example.com/oauth2/callback"

# PocketIDにID情報を問い合わせる
scope            = "openid email profile"

########################################
# アップストリーム (Bento PDF)
########################################

upstreams        = ["http://bento-pdf:8080"]

# 他のリバースプロキシ (Nginx/Caddyなど) の背後にいる場合
reverse_proxy    = true

########################################
# クッキー
########################################

# 以下を使って32バイトのランダムなbase64文字列を生成する:
# python - << 'EOF'
# import os, base64; print(base64.urlsafe_b64encode(os.urandom(32)).decode())

アプリごとに設定するのは少し手間だけど、一度やってしまえば終わりだからね。

53
Time_Lord23
👍28日前

自分はoauth2-proxyからtinyauthに乗り換えたよ。似たようなもんだね。tinyauthの設定を一度pocket idですれば、あとは必要なサービスにシンプルなアノテーション(k3s/traefik)を追加するだけだから楽だよ。

54
brovaro
👍38日前

あー、そういうことね。了解。じゃあTinyauthを見てみるよ。

55
vswr
👍18日前

Pythonに関してだけど、暗号化関連の機能にはrandomモジュールよりsecrets module を使うのが推奨されてる。例:>>> import secrets; secrets.token_urlsafe(32) 'gaHjLxVgPm1RSJ8Jj-1O1tZxIonA3JqoZWJicE_UeAE' もしくはhexの方が良ければ(opensslコマンドを使うガイドが多いみたいに):>>> import secrets; secrets.token_hex(32) '0c005a6631b6875ab67cfc1b5558a34c58c08f84a284b7a5beb08c08e6af9af5'

56
luxiphr
👍99日前

自分はlldap+autheliaを使ってるよ。サポートしてるアプリ全部でOIDC経由にしてる。

57
hydrora31
👍339日前

自分はIDプロバイダーにPocketID、認証機能がないものにはTinyAuthを使ってる。これまで構築した中で最高のシステムで、めちゃくちゃ快適。家族にも好評で、GoogleやMicrosoftのログインが20年遅れてるように見えるくらいだよ。

58
rabanada_de_az8
👍48日前

自分もPocketIDにはかなり満足してる。セットアップも使い勝手も簡単だしね。

59
DetectiveDrebin
👍28日前

Pocket-IDに1票。自分はPangolin(Traefik込み)と一緒に使ってる。Pangolinを使うとルーティングや証明書、ルール、バイパス設定が楽だからPocket-IDとの相性もいいんだ。例えばSeafileとOnlyOfficeを併用するとき、ブラウザでファイルを編集・保存できるようにするために、一連のバイパスルールを作って連携させる必要があったよ。

60
-eschguy-
👍28日前

OIDCに対応していないいくつかのサービスのために、TinyAuthを実装しようと思っていたところだよ。

61
hydrora31
👍18日前

驚くほどシンプルで、認証やOIDCについて考えさせられたよ。多くのプロバイダーが認証機能とID管理機能を統合しちゃってるけど、それは本来あるべき姿じゃないって気づかされたね。で、OIDCを実装しているほぼ全ての場所が、独自の認証プロバイダーを内蔵していることにも気づいたんだ。いっそ全部フォワード認証だけで対応してくれればいいのに、って思っちゃうよxD。

62
viggy96
👍39日前

Pocket IDとLLDAPを使ってるけど最高にいい感じ。認証非対応のサービスはtraefikのミドルウェアとして連携させて、対応してるやつはID/パスワード認証を無効化してOIDCだけに統一したよ。例外はNextcloudで、これはOIDCに加えて2FA付きのID/パスワードも残してる。あとJellyfinはOIDCとの相性がまだ悪いから今のところID/パスワードのみ。ただ、ブルートフォース攻撃対策でfail2banは入れてる。https://github.com/viggy96/container_config

63
mefistos
👍18日前

自分もPocketIDとLLDAPを使ってるけど、OIDC非対応のアプリにはtinyauthを使ってる。

65
kY2iB3yH0mN8wI2h
👍39日前

自分は古い人間だから、20年前からActive Directory / LDAPでSSOとディレクトリ統合をやってたんだよね。使ってるアプリが全部LDAPに対応してるから、ずっとこれ一択。PSNOと組み合わせればログインもかなりスムーズ。Authentikもホームラボに入れてるけど、自分一人で使う分にはそこまでのSSOは必要ないかな。他の人にサービスを公開するなら面白いだろうけど、今はやってないし。

66
Puny-Earthling
👍39日前

LogToは最高だよ。めちゃくちゃおすすめ。

67
Far_Squirrel_6148
9日前

エージェントに頼んでドメイン全体でNginxとAuthentikを組み合わせた構成にしたよ。最初は直感的に分かりにくい部分もあるけど、そこまで混乱するほどじゃない。認証は好きに構成できるのがいいよね。自分はパスキーによるシンプルなパスワードレス環境にしたよ。すごくおすすめ。アプリで/shareリンクとかがある場合は除外設定もできるし。

68
Petelah
👍28日前

もしTailscaleを使ってるなら、tsidpが実装しやすくておすすめ。

69
UnderpantsInfluencer
👍158日前

authentikを強く勧めるよ。何と言ってもインテグレーションのドキュメントが最高だから。認証周りは単純じゃないし、自力でやろうとすると泥沼にはまるよ。

70
Straight-Focus-1162
👍48日前

VoidAuthがいいかも。

71
MysteriousMeringue70
👍28日前

Pocket IDとCaddyのforward auth、それにOIDCを直接サポートしてないアプリにはTinyauthを使ってる。めちゃくちゃ快適だし、Dockerラベルでアプリごとにアクセス制御の設定ができるのもいい感じ。

72
ReverendDizzle
👍18日前

うわ、なんてタイミングの良い投稿なんだ。さっきまであまり使わないサービスのパスワードリセットをしてて「マジで統一ログインシステムが必要だわ」って思ってたところだよ。投稿してくれて本当に助かる、寄せられたリプライも全部読むよ。

73
leoniiix
👍58日前

似たような環境でKeycloakを使ったことあるけど、対応してるアプリなら問題なく動くよ。ただ、きれいに統合できないツールが増えてくると一気に管理が面倒になる。結局、すべてのサービスじゃなくて主要なものだけで使うのが一番だなって結論になった。

74
MFKDGAF
👍28日前

Keycloakとスムーズに連携できないツールを使うために、別のものに乗り換えたの?自分は仕事でKeycloakを使っていて、その経験があるから自宅の認証もKeycloakにしたんだよね。理想を言えば認証基盤は1つにまとめたいし。

75
snajk138
👍18日前

Authentikをインストールしたけど、まだセットアップできてないんだよね。仕事でKeycloak使ってるけどかなり複雑だし、もう少し簡単なやつを試そうと思って。とはいえ、SSOはおろか外部認証すら対応してないサービスが多いのが悩みの種だよね。

76
MFKDGAF
👍18日前

同じく。自分も仕事でKeycloakを使っているから自宅にもデプロイしたんだけど、Homepageみたいに認証機能がないものに対しても認証をかけられる仕組みが必要なんだよね。

77
Alternative-Suit5541
👍18日前

zidaelってのもあるよ。

今ちょうどチェックしてるとこ。

78
Equivalent_Active130
👍38日前

自分はこれをベースにAuthentikで完全にエコシステムを構築してるよ。すごくうまく動いてる。新しいサービスを入れる時の基準は、基本的にOIDCを使えることにしてる。とはいえ、AuthentikのOutpostでログイン認証(認証を通らないとページに飛べない仕組み)をかけてないツールもいくつかあるけどね。設定はこんな感じ:

ホーム画面はhome.domain.comのAuthentikのOutpost経由でゲートしてる。これが親戚全員用のSSOポータルになってる。全ユーザーのログイン方法として「Googleでサインイン」をメインにしてるから、みんなワンクリックで入れる。ITに詳しくない連中ばかりだからね。

使ってるOIDCアプリ:
Nextcloud, Immich, Audiobookshelf, Kavita, RomM, Mealie, Wikijs

ツール系:Sterling-PDF, ConvertX, MiniQR, ConvertX。このエコシステム外で動かしてるのはPlexだけかな。

自分のマシンでもローカルサービスを一通り動かしてるけど、それは自分用で、Uptime Kuma、Speedtest Tracker、Tautulli、Prometheus、Grafana、cAdvisor、標準的なセキュリティツールとかだね。

FQDNは全部Cloudflare経由で、ジオフェンシングとかの一般的な制限をかけてる。

要するに、AuthentikがメインのSSO IdPで、みんなGoogleでサインインすればあとは自由に使える状態。NextCloudは家族全員で使う共有フォルダとして設定してて、家系図とか写真とか、共有したいものを何でも放り込めるようにしてる。

あえてAuthentikの設定を変えて、アクセスできるのは手動で追加したメンバーだけにしてる。自己登録は絶対ナシだし、みんなGoogleでサインイン以外は何もしてない。ワンクリックで全部のサービスにアクセスできる環境だよ。こうしたのは、使ってるみんながITに詳しくないから、パスワード不要で全プラットフォームにアクセスできるのが一番手っ取り早かったからなんだ。家族でシェアして協力して使うためのものだし、ユーザーはみんな信頼できる身内ばかりだよ。

正直に言うと、Authentikを適切に設定してトラブルを解消するのは一番苦労した。フローやステージ、Outpostなんかの仕組みを理解するのに結構時間かかったしね。でも、やるだけの価値は確実にあるよ。

79
potatoes-are-real
👍18日前

自分は全アプリケーションでPocket IDとTinyAuthを組み合わせて使ってるけど、すごく快適だよ!

80
SpencerDub
👍18日前

今ちょうど設定中なんだけど、Navidromeの設定で詰まってる。VPS上のPangolinで自宅サーバーのPocketIDを認証ソースにしていて、同じ自宅サーバーのNavidromeをリソースとして使おうとしてる。Navidromeの外部認証ドキュメントには、TrustedSources設定オプションにリクエスト元のIPアドレスを追加しろってあるんだけど、これって固定IPや予測可能な範囲のIPを持つリバースプロキシを指してる気がするんだよね。でも自宅のデスクトップからNavidromeのURLにアクセスすると、Navidromeのログには自宅ネットワークのグローバルIPからリクエストが来てるように見える。これだとクライアントのIPがそのまま見えるってことだよね?TrustedSourcesを有効なオプションとして使うには何かが足りてない気がする。今日中にでも別スレッド立てようと思ってるけど、もし同じような構成でヒント持ってる人がいたらぜひ教えてほしい。

81
LeHunterrr
👍18日前

PangolinもNavidromeも詳しくないんだけど、信頼できるソースの設定はもう済んでる?設定されていればリバースプロキシがHTTPリクエストに追加ヘッダーを付与して、バックエンド側で実際のIPを判断できるようになるはず。今の状態でパブリックIPが見えてるってことは、既にその仕組みが動いてるのかもね。

82
javiers
👍18日前

PocketIDがいいよ。OIDC非対応のアプリにはTinyauthを使う。軽くて安定してる。

83
mavenHawk
👍18日前

TinyAuthとかを使ってる人に聞きたいんだけど、アプリがOIDCに対応してなくて、SSOした後に結局アプリ側でもログインしなきゃいけないのって面倒じゃない?

84
retro_grave
👍18日前

全部Keycloak一択。今は設定を https://github.com/Hostzero-GmbH/keycloak-operator に移行してるところだけど、今のところかなりいい感じ。

IdPにはFreeIPAを使ってる。ホストやVMを一括管理できるのが気に入ってるんだ。

OIDCが使えれば使うけど、基本的に自分のIdPに属さない個別アカウントは作らないようにしてる。何でも設定できるし、フォワードプロキシを使うだけでも済むから楽でいいよ。

85
romprod
8日前

AuthentikとInfisicalの組み合わせだな。

Codexを使って、使っているアプリ全部と連携させてるよ。

86
webflo-dev
👍18日前

HTTPS用にTraefik + TinyAuth + Pocket-IDを使ってる。

87
mikeymop
👍18日前

可能な限りKanidmを使ってるよ。

Navidromeについてはまだ解決策を探してる最中で、今はTraefikのフォワード認証用にAuthentikをNavidromeのためだけに動かしてる。

今の計画としては、Navidromeの前にPangolinを立てて、クライアント用に有効期限の長いアクセストークンを使うつもり。

88
PTBKoo
👍18日前

ここで言及されてるアプリのほとんどより、Cloudflare Zero Trustの方が優秀だよ。

89
csharpboy97
👍18日前

自分はAuthentikを使ってるよ。

90
AhrimTheBelighted
👍18日前

自分はユーザーとセキュリティグループ用にADをバックエンドにしたAuthentikを使ってるよ。必要な機能は全部揃ってる。

91
Nearby_Year_6669
👍18日前

タイミングがいいね。ちょうどAIエージェントに特化した似たようなものを公開したところなんだ。人間がアプリごとに認証を管理するんじゃなくて、ローカルで動くAIエージェント向けのAPIキーアクセスを管理するものさ。「単一の信頼できる情報源(single source of truth)」という考え方は同じだけど、クライアントが人間じゃなくて自律プロセスなんだよ。興味があれば github.com/prem7verma21-code/vault-zero を見てみて。認証アーキテクチャについて考えている人からのフィードバックは大歓迎だよ。

92
samsonsin
👍18日前

Authentikは本当にいいね。欲しい機能が全部揃ってる。pocketidなんかと比べると設定の手間は少し増えるけど、OIDC未対応のアプリでもフォワード認証とヘッダーを使った認証ができるから詰まないのが強みだね。基本、数十ものサービスでユーザーと権限を一箇所で管理できるのは楽だよ。これにユーザー体験の向上とSSOの便利さが加われば、複数の人がアクセスするサービスがいくつかあるなら導入しない手はないでしょ。それに、こういうシステムは個別のアプリのログインページよりも遥かに堅牢だしね。重要なものがフォワード認証の裏側にあって、ログインページの深刻な脆弱性があっても影響を受けないとわかっていれば、安心して眠れるよ。

93
youRFate
👍18日前

自分は lldap と pocket ID を使ってる。

94
_HingleMcCringle
👍28日前

俺はAutheliaを使ってるから、構成はこんな感じ:Cloudflare Tunnel(サブドメインごと、immich.domain.comなど) > Nginx Proxy Manager > セッションが有効じゃないユーザーにはAutheliaのサインインページ。サインインにはパスキーを使ってパスワードマネージャーに保存してる。妻はフィットネストラッカーや旅行計画ツールに簡単にアクセスできるし、自分でホストしてるって感覚が最高だよ。

95
Bromeister
👍18日前

全機能が必要ならauthentik。軽量なのがいいならkanidm。一番軽くて機能がなくてもいいならpocketidかな。

96
sh0nuff
👍18日前

前からやりたかったんだよね。2FAでログインできるイケてるダッシュボードを作って、そこから全アプリを立ち上げられるようなやつ。

97
Much_Elk3853
👍18日前

初歩的な質問かもしれないけど、サーバーのホスト方法について考えてて。全アプリの前にWireGuardを置いて、アクセスさせたい人にQRコードかコンフィグファイルを送れば、その人たちだけがアクセスできるんじゃないかと思ったんだ。少なくともそういう仕組みだと理解してるんだけど、間違ってるかな?認証システムとしては十分な気がするんだけど。追記:書き込んだ瞬間に間違いに気づいた。誰か知ってたら教えてほしいけど、違ってたらごめん。

98
Trigus_
👍18日前

Zitadelを使ってる人が少なくて驚いてる。今のところ最高だよ。必要な機能は全部揃ってるし、Terraformのサポートも完璧だし、Keycloakより軽量だしね。俺はoauth2-proxyと組み合わせて使ってる。もしZitadelを試してやめた人がいたら、理由を知りたいな。

99
Zolty
👍18日前

authentikとGoogle認証の組み合わせが好き。

100
arbv
👍18日前

俺はSamba ADとAutheliaを組み合わせて動かしてるよ。