ドメイン上でカスタムマトリックスルームエイリアスを設定する方法
Matrixルームエイリアスの仕組み、ドメインとSynapseホームサーバーの準備、フェデレーション委任の設定、カスタムエイリアスの作成、そして安全な検証方法について学びましょう。
このガイドでは、OAuth 2.0 を基盤とするアイデンティティレイヤーである OpenID Connect (OIDC) を使用して、ownCloud Infinite Scale (oCIS) を Keycloak に接続する方法を説明します。Keycloak はユーザーを認証し、oCIS は Keycloak が発行する署名付き ID およびアクセス情報を信頼します。ブラウザベースのサインインには HTTPS リダイレクトが使用され、oCIS は Keycloak の検出エンドポイントと署名キーエンドポイントにもアクセスする必要があります。
2026年10月6日現在、ownCloudの最新の管理ドキュメントでは、これらの設定はInfinite Scale 9.0の項目に記載されています。公式のKeycloakデプロイメント例は便利な出発点となりますが、Composeファイルとレルムのエクスポートは変更される可能性があります。互換性のあるイメージバージョンを固定し、バージョン管理されていない例を盲目的にコピーするのではなく、デプロイするファイルをレビューしてください。

oCIS のパブリック HTTPS アドレス (例: https://cloud.example.com) と Keycloak のパブリック HTTPS アドレス (例: )を準備してくださいhttps://sso.example.com。どちらのアドレスも、ユーザーのブラウザから正しく解決できる必要があります。また、oCIS サーバーは Keycloak の OIDC メタデータと公開署名キーにアクセスできる必要があります。リバースプロキシがどちらかのサービスのフロントエンドとして機能する場合は、そのパブリックホスト名と転送ヘッダーを統一的に設定してください。

Keycloak では、OIDC 発行者は通常、管理コンソール URL や検出ドキュメント URL ではなく、レルム URL です。 という名前のレルムの場合team、 のようになりますhttps://sso.example.com/realms/team。古いインストールやパスプレフィックス付きのデプロイメントでは異なる場合があるため、値を記憶から構築しないでください。 でレルムの検出ドキュメントを開きhttps://sso.example.com/realms/team/.well-known/openid-configuration、そのプロパティの値をissuer正確にコピーしてください。
Keycloakにアクセスできるサーバーから、以下のコマンドでドキュメントを検査できます。
curl -fsS https://sso.example.com/realms/team/.well-known/openid-configuration
返された発行者が、oCISで設定するスキーム、ホスト、パス、レルム名と同じであることを確認してください。OpenID Connectは発行者のIDを厳密に検証します。リバースプロキシのホスト名が一致しない、または余分なスラッシュがあると、ログインが失敗する可能性があります。

クライアントとは、Keycloak がどのサービスがサインインを要求できるかを決定するために使用するアプリケーション登録のことです。oCIS で使用されるレルムで OpenID Connect クライアントを作成または変更します。 などのクライアント ID web、またはカスタム値を使用し、それがWEB_OIDC_CLIENT_IDoCIS の値と一致していることを確認してください。公式の ownCloud の例では、webデフォルト値として を使用しています。
ブラウザベースのクライアントの場合は、標準の認証コードフローと、公式のサンプルレルムに準拠したパブリッククライアント構成を使用してください。デプロイメントに必要な正確な HTTPS リダイレクトとログアウト後のリダイレクトパターンを入力してください。https://cloud.example.com/*すべてのホストに適用される広範なワイルドカードよりも、 のような狭いホスト名パターンの方が監査が容易です。デプロイメントに必要な Web オリジンのみを追加してください。パブリック ブラウザ クライアント用のクライアント シークレットを作成して、それをフロントエンド構成に埋め込まないでください。

OIDCクレームは、トークンに含まれる、またはuser-infoエンドポイントから返されるID属性です。少なくとも、ユーザー名クレームは慎重に選択してください。ownCloudプロキシはデフォルトでpreferred_usernameユーザー解決に使用され、Keycloakの例ではWebクライアントを標準のプロファイルおよびメールスコープで構成します。ご自身のレルムが実際に使用するクレームを返すことを確認してください。クレームの可用性は、クライアントスコープとプロトコルマッパーによって異なります。
既存のアカウントの場合、設定されたクレームは対応する安定したownCloudユーザー属性にマッピングされている必要があります。ユーザー名またはメールアドレスが変更された場合、それを永続的な識別子として使用すると、アカウントのマッチングに問題が発生する可能性があります。クレームはsubIDプロバイダーごとに一意かつ安定していることが保証されていますが、既存のユーザー名と一致しない場合があります。すべてのユーザーにアクセスを許可する前に、管理者以外のアカウントを使用してアカウントのマッピングをテストしてください。

oCISデプロイメントの環境設定で、以下の値を設定してください。この例ではHTTPSとKeycloakレルム()を想定しています/realms/team。ご自身のURLを使用してください。このYAML形式のブロックは例示であり、Docker Compose、Kubernetes、systemdなどのデプロイメント方法では環境変数の表現方法が異なります。
OCIS_URL: https://cloud.example.com
OCIS_OIDC_ISSUER: https://sso.example.com/realms/team
PROXY_OIDC_REWRITE_WELLKNOWN: "true"
WEB_OIDC_CLIENT_ID: web
PROXY_USER_OIDC_CLAIM: preferred_username
OCIS_EXCLUDE_RUN_SERVICES: idp
OCIS_OIDC_ISSUER外部IDプロバイダを選択します。PROXY_OIDC_REWRITE_WELLKNOWN=trueプロキシがOpenID Connect検出エンドポイントを構成済みの発行者に書き換えるようにします。ownCloudは、デスクトップおよびモバイルクライアントがプロバイダを検出するためにこれが必要であることを文書化しています。KeycloakWEB_OIDC_CLIENT_IDクライアントと一致する必要があります。除外すると、idp組み込みプロバイダがアクティブなログインプロバイダとして起動されないよう、ownCloudのKeycloakの例に従います。

oCIS が初回ログイン時にアカウントを作成するようにするには、PROXY_AUTOPROVISION_ACCOUNTS=true書き込み可能なユーザーバックエンドを使用して Graph サービスを設定および構成します。PROXY_USER_OIDC_CLAIMと をPROXY_AUTOPROVISION_CLAIM_USERNAME同じクレームに設定します。ユーザー名属性については、ownCloud のドキュメントを参照してくださいPROXY_USER_CS3_CLAIM=username。自動プロビジョニングはオプションであり、認証とは別にテストする必要があります。受信クレームが一意で、意図どおりにマッピングされている場合を除き、有効にしないでください。
Infinite Scale は、Web クライアントが接続できる外部オリジンを制御するためにコンテンツ セキュリティ ポリシー (CSP) を使用します。ownCloud のドキュメントによると、Keycloak などの外部 ID プロバイダーには適切な CSP 定義が必要です。ログイン ボタンが表示されるものの、ブラウザがリクエストをブロックする場合は、ブラウザのコンソールで CSP エラーを確認してください。ポリシーを設定しPROXY_CSP_CONFIG_FILE_LOCATION、デプロイメントに必要な Keycloak オリジンとディレクティブのみを許可します。ファイルを変更した後は、プロキシまたはデプロイメントを再起動してください。すべてのオリジンを許可することで接続の問題を解決しないでください。
環境変更を適用し、普段管理に使用している方法でoCISデプロイメントを再起動してください。共通の再起動コマンドはありません。Composeプロジェクト、Kubernetesワークロード、systemdサービスでは制御方法が異なります。次に、チェーン内の各リンクを確認してください。
issuer、 、authorization_endpoint、token_endpoint、 を含む JSON が返されることを確認しますjwks_uri。

| 症状 | まずチェック |
|---|---|
| 発行者不一致または無効なトークン | OCIS_OIDC_ISSUER開示文書の値と文字単位で比較するissuer。 |
| KeycloakでリダイレクトURIエラーが発生しました | クライアントの有効なリダイレクトURLとログアウト後のURLを、HTTPSとパスを含む実際のownCloudの公開URLと照合します。 |
| ログインはブラウザでは機能しますが、デスクトップまたはモバイルクライアントでは機能しません。 | PROXY_OIDC_REWRITE_WELLKNOWN=trueownCloudのURLで提供される検出応答を確認し、検査してください。 |
| ブラウザコンソールはブロックされたリクエストを報告します | CSPを確認し、必要な指示に従ってKeycloakオリジンを許可してください。 |
| ユーザーがサインインしたが、アカウントエラーまたは重複が表示される | ユーザー名の主張、トークンまたはユーザー情報レスポンスにおけるその値、および既存のアカウントとのマッピングを確認してください。 |
| サーバーからのTLSまたは検出要求が失敗しました | DNS、リバースプロキシルーティング、証明書チェーンの信頼性、およびoCISホストがKeycloakにアクセスできることを確認してください。 |
latestタグに頼るのではなく、ownCloudとKeycloakのバージョンをテストしました。Matrixルームエイリアスの仕組み、ドメインとSynapseホームサーバーの準備、フェデレーション委任の設定、カスタムエイリアスの作成、そして安全な検証方法について学びましょう。
ownCloud Serverの管理者が、共有、バージョン、検証を考慮しながら、occを使用して選択したフォルダまたはすべてのファイルを別のユーザーに転送する方法を学びましょう。
Nextcloudのコード整合性警告の診断方法、変更または欠落したコアファイルの復元方法、余分なファイルやアプリ署名エラーの処理方法、そして修復が安全に行われたことを確認する方法を学びましょう。
Nextcloud Desktopが「ファイルの処理中」のまま止まってしまいますか?データにリスクを与えることなく、ブロックしているファイル、同期設定、ネットワーク、ログ、および安全なリセットオプションを診断します。
occコマンドを使用して、紛失したNextcloud管理者パスワードをコマンドラインからリセットします。正しいインストールパスを見つけて、安全にリセットを実行し、アクセスを確認してください。
Jitsi Meet 用に Docker Compose を使用して Jibri をセットアップします。録画の設定、ストレージ権限の保護、サービスの起動、録画と RTMP ストリームのテストを行います。
ownCloud Serverの有効期限切れコマンドと完全削除コマンドを比較し、Infinite Scaleの個別のリビジョンワークフローと、クリーンアップを安全に検証する方法を学びましょう。
Jitsi Meet の設定で、承認された認証済みユーザーのみがルームを開始できるようにし、許可すればゲストも参加できるようにします。Docker の手順と最新の認証ガイダンスが含まれています。
ownCloudのWebDAV警告のトラブルシューティングを行うには、DAVルート、Apacheのリライト、リバースプロキシ、DNS、TLS、およびサーバー側の接続性を確認してください。
ZimbraでCPU使用率が高い原因がclamdかfreshclamのどちらであるかを特定し、適切なログを検査し、一般的な原因を安全に修正し、ウイルス対策サービスの復旧を確認します。