Web コンソールのユーザー管理とアクセス制御(OpenResty Edge)
OpenResty Edge のユーザー管理では、Web コンソールからロールベースのアクセス制御を実現できます。組み込みの「super admin」と「normal admin」の 2 つのグループがあり(新しいグループを作成できるのは「super admin」のみ)、カスタムグループにはページ単位で権限を設定でき、各ユーザーにはアプリケーション単位で 4 段階の権限(変更・公開・更新・DNS 管理)を付与できます。本チュートリアルでは、ユーザーの作成、グループの割り当て、アプリケーションの権限付与、そしてそのユーザーでログインして効果を確認するまでの一連の流れを解説します。
新しい normal user アカウントの作成
まずコンソールにアクセスします。これはデモ用にデプロイしたコンソールで、各ユーザーはそれぞれ自身のローカルなデプロイ環境を持ちます。
「Users & Groups」タブの下にあるユーザーページに移動します。
ここにはこのコンソールのすべてのユーザーのリストがあります。新しいユーザーアカウントを作成しましょう。
「jeff-tester」という名前を付けます。
初期パスワードを設定する必要があります。パスワードの設定には一定の要件があります。
パスワードを「Abc@123456」に設定します。
パスワードを再入力して確認します。
ユーザーグループとロールベースの権限の割り当て
次に、このユーザーをグループに割り当てる必要があります。ユーザーグループは特定のページの権限を設定するために使用できます。「super admin」と「normal admin」は組み込みのユーザーグループで、どちらもすべてのページにアクセスして更新する権限を持っています。ただし、新しいユーザーグループを作成できるのは「super admin」のみです。
このチュートリアルでは、「normal user」を選択します。これは事前に定義されたユーザーグループです。ユーザーグループの作成方法は別の動画で説明します。
デフォルトの通常のログイン方法に加えて、他の LDAP 認証サーバーを設定することもできます。
最後に、次回ログイン時にユーザーにパスワードの変更を要求するオプションがあります。これにより、パスワードが初期設定のままになることを防げます。
今回は要求しないことにします。保存をクリックします。
「jeff-tester」というユーザーが作成されたことが確認できます。現在「super admin」としてログインしているため、このユーザーがパスワードを忘れた場合、パスワードをリセットすることができます。
ユーザー名は作成後に変更できませんが、ユーザーグループやログインタイプは調整可能です。
グループとアプリケーションのアクセス制御の設定
「User Groups」ページに移動します。
これらは事前に定義されたユーザーグループです。「normal user」ユーザーグループをクリックして詳細を確認しましょう。
ここには各ページのアクセス権限の詳細リストがあります。高度にカスタマイズ可能です。すべてのページや機能を個別に設定できます。
「DNS」モジュールと「Gateway Clusters」は通常のユーザーグループには表示されないことがわかります。後ほど、作成したアカウントに切り替えて確認します。個々の DNS アプリケーションを「誰が管理できるか」をより細かく制御する方法は、OpenResty Edge における DNS アプリケーションのアクセス制御を参照してください。
別のタブ「User Management」で、ユーザーグループ内のメンバーの追加や削除を管理できます。
「normal user」はデフォルトではアプリケーションへのアクセス権限がありません。アプリケーションごとにアクセス制御を設定する必要があります。
サンプルアプリケーション「test-edge.com」に移動しましょう。
「Access Control」ページに移動します。
このボタンをクリックすると、指定したユーザーにアクセスを許可できます。
ユーザーを検索して選択し、このアプリケーションへのアクセス権限を付与できます。
ここではテストユーザーを選択します。
このユーザーは常にこのアプリケーションの詳細を閲覧できます。「super admin」は、変更・公開・更新・DNS 管理の権限を付与することもできます。
デフォルト設定のままにして、変更権限のみを付与して保存します。
normal user でログインして設定の反映を確認
次に、「normal user」に切り替えて効果を確認します。現在のアカウントからログアウトします。
作成したユーザー名とパスワードでログインします。
ログイン後、タブが 2 つしかないことがわかります。「Gateway cluster」と「Global config」は、この 「normal user」には表示されません。
ユーザーは 1 つのアプリケーションしか見えません。これは先ほどこの権限のみを付与したためです。
アプリケーションに入ります。
ユーザー権限の設定により、左側に公開ページがないことがわかります。
よくある質問
OpenResty Edge で特定のユーザーを 1 つのアプリケーションだけに制限するには?
まず、デフォルトではアプリケーションへのアクセス権を持たないグループにユーザーを入れ、対象のアプリケーションを開いて「Access Control」ページからそのユーザー個別に権限を付与します。normal user は権限を付与するまでどのアプリケーションにもアクセスできないため、明示的に許可したアプリケーションだけが表示されます。
OpenResty Edge の「super admin」と「normal admin」の違いは?
「super admin」と「normal admin」はどちらも組み込みグループで、すべてのページを閲覧・更新できます。違いは、新しいユーザーグループを作成できるのが「super admin」のみである点です。本チュートリアルの「normal user」のようなカスタムグループは、ページ単位の権限を個別に設定します。
OpenResty Edge は LDAP サーバーによる認証に対応していますか?
対応しています。ユーザーの作成・編集時に、ログインタイプをデフォルトの通常ログインから LDAP 認証サーバーに切り替えることができ、ローカルパスワードではなく既存のディレクトリで資格情報を検証できます。
OpenResty Edge でユーザーにアプリケーション単位で付与できる権限は?
アプリケーションの詳細を閲覧する権限に加えて、「super admin」は変更・公開・更新・DNS 管理の権限を付与できます。デフォルト設定では変更のみが許可されるため、公開には権限を明示的に付与する必要があります。
OpenResty Edge について
OpenResty Edge は、マイクロサービスと分散トラフィックアーキテクチャ向けに設計された多機能ゲートウェイソフトウェアで、当社が独自に開発しました。トラフィック管理、プライベート CDN 構築、API ゲートウェイ、セキュリティ保護などの機能を統合し、現代のアプリケーションの構築、管理、保護を容易にします。OpenResty Edge は業界をリードする性能と拡張性を持ち、高同時接続・高負荷シナリオの厳しい要求を満たすことができます。K8s などのコンテナアプリケーショントラフィックのスケジューリングをサポートし、大量のドメイン名を管理できるため、大規模ウェブサイトや複雑なアプリケーションのニーズを容易に満たすことができます。
著者について
章亦春(Zhang Yichun)は、オープンソースの OpenResty® プロジェクトの創始者であり、OpenResty Inc. の CEO および創業者です。
章亦春(GitHub ID: agentzh)は中国江蘇省生まれで、現在は米国ベイエリアに在住しております。彼は中国における初期のオープンソース技術と文化の提唱者およびリーダーの一人であり、Cloudflare、Yahoo!、Alibaba など、国際的に有名なハイテク企業に勤務した経験があります。「エッジコンピューティング」、「動的トレーシング」、「機械プログラミング」 の先駆者であり、22 年以上のプログラミング経験と 16 年以上のオープンソース経験を持っております。世界中で 4000 万以上のドメイン名を持つユーザーを抱えるオープンソースプロジェクトのリーダーとして、彼は OpenResty® オープンソースプロジェクトをベースに、米国シリコンバレーの中心部にハイテク企業 OpenResty Inc. を設立いたしました。同社の主力製品である OpenResty XRay(動的トレーシング技術を利用した非侵襲的な障害分析および排除ツール)と OpenResty Edge(マイクロサービスおよび分散トラフィックに最適化された多機能ゲートウェイソフトウェア)は、世界中の多くの上場企業および大企業から高い評価を得ております。OpenResty 以外にも、章亦春は Linux カーネル、Nginx、LuaJIT、GDB、SystemTap、LLVM、Perl など、複数のオープンソースプロジェクトに累計 100 万行以上のコードを寄与し、60 以上のオープンソースソフトウェアライブラリを執筆しております。
翻訳
英文版の原文と日本語訳版(本文)をご用意しております。読者の皆様による他の言語への翻訳版も歓迎いたします。全文翻訳で省略がなければ、採用を検討させていただきます。心より感謝申し上げます!




















































