• 締切済み

認証と承認の仕組みについて

atonの回答

  • aton
  • ベストアンサー率47% (160/334)
回答No.2

認証=authentication(以下authn), 承認=authorization(以下authz), と解釈して話を進めます。 Authzのアクセス権を管理する方法は,大きく ・アクセス対象(ファイルなど)のメタ情報として管理する ・アクセス者(ユーザー)のメタ情報として管理する の2方式に分けられると言われています。 質問の主旨は,おそらく,後者の場合,そのアクセス権情報がどこに格納されていて,どういうタイミングで利用されるのか,ということだと思います。 実際のところ,これについては,実現方式によりさまざまです。 一番単純なやり方としては,例えば,認証機能をもつディレクトリーサーバー(LDAPやActiveDirectory,質問のA+B)に,ユーザー毎にどのサービスへのアクセス権があるかを格納しておき,authzの時にサービス提供サーバー(C)から,ディレクトリーサーバーに問い合わせる,という方法が考えられます。または,authnが終わったら,そのユーザーが所有するアクセス権をオブジェクト化し,有効期限(例えば認証セッション終了時)が終わるまで持ち回るという方法も考えられます。この場合,サービス利用毎にいちいちディレクトリーサーバーに問い合わせる手間が省けますが,アクセス権オブジェクトが複製されたり有効期限を越えて利用されたりする危険があるのでセキュリティ的には弱くなります。 またこのバリエーションとして,Kerberosのように,KDC内に Authentication Server (AS, 認証サーバー)と Ticket-Granting Server (TGS,チケット交付サーバー)を持ち,ASが認証(Aの役割)を,TGSがアクセス権オブジェクトの生成(Bの役割)を行うようなシステムもあります。Kerberosの場合,ユーザーはまず利用したいサービス(C)を決め,当該サービスの利用券(アクセス権オブジェクト)をKDCに要求します。KDCはユーザーをASで認証した後TGSに転送し,TGSは当該ユーザーの当該サービスへの利用券をユーザーに交付します。ユーザーはそれを持ってサービスCに行き,サービスを受ける,という流れになります。 (参考URLはKerberosの解説) このように,ユーザーのメタ情報としてのアクセス権をどこに格納し,どのタイミングで取り出すかについては,いろいろな方法があり,一概にこれ,と答えることはできません。

参考URL:
http://www.ne.jp/asahi/yokohama/juk/krb/krb-open.html
paradium-
質問者

お礼

大変わかりにくい質問の仕方をしてしまって、すいませんでした。 概ね理解できました。ご回答ありがとうございました。 いずれの場合においても、認証と承認(アクセス権情報の格納)は1つのマシン内で管理する必要がありそうですね。 質問の主旨から行くと、認証と承認を別のマシンで管理する事は可能か、と言うことだったので、皆様のご回答から行くと、難しいのかもしれませんね。 ありがとうございました。

関連するQ&A

  • LDAPのユーザー認証について

    本やいろんなサイトを回ったんですが いまいち理解できてないので質問します。 RedHatLinux9をインストールした LDAPサーバー(S)とLDAPクライアント(C)と2台あります。 LDAPクライアント(C)の認証をLDAPサーバー(S)側で行おうと思っているんですが、ここがよく理解できてません。 LDAPクライアント(C)にログインする時に、LDAPサーバー(S)でしか設定していないユーザーだと、入れないですよね?まずホームディレクトリが存在しませんし。かといってホームディレクトリ作っても、LDAPクライアント側にはそのユーザーはいないのでchownでオーナーの指定ができませんよね? となるとやはりサーバー&クライアント両方に同じユーザーを作る必要があるんでしょうか? あたりまえ過ぎる質問かもしれませんが わからないんです。よろしくお願いします

  • LDAP認証について ADとの違いは???

    よくパッケージソフトでLDAP認証対応と書いたものがあると思いますが、その辺の知識をお持ちの方ご教示いただけませんでしょうか? 上記のLDAP認証はActiveDirectoryを認証の基盤として利用できるという認識で良いものなのでしょうか? ActiveDirectoryユーザーでWindowsクライアントにログインさえすれば利用するパッケージソフトでのログインを不要としたいのです。 それか何か別のものを用意しなくてはならないのでしょうか? あまり費用はかけれないのですが詳しい方よろしくお願い致します。

  • LDAP認証について質問させて下さい。

    LDAP認証について質問させて下さい。 環境は以下の通りです。 OS:Solaris10 LDAP:sun java system directory server 6.3 現在、LDAPサーバ自身のOS認証にLDAPサーバ(自分自身)を使用することを 考えているのですが、そのような構成は可能なのでしょうか? マニュアルを見てもよくわからず質問させて頂きました。 不可能な場合は、その理由も教えていただけるとありがたいです。 また、LDAPサーバ上に、sybaseとsambaをインストールして、 ユーザ認証をLDAPで行おうかと考えているのですが、そのような構成も可能なのか 教えていただけたら幸いです。 よろしくお願いします。 以上です。

  • ユーザ認証のあるサービスを社内で利用したときの挙動に関して

    インターネット上でユーザ認証のあるサービスを提供しているのですが、ある会社内からアクセスすると他のユーザ(他の社員)のページが表示されてしまうと言われました。これは社内に設置されているプロキシサーバの問題でしょうか?それともサービス提供側のHTTPサーバの設定の問題でしょうか?

  • 認証の一元管理

    クライアントは全てWindowsですが、サーバがWindows 2000 ServerとSolarisサーバの混在です。現在はWindowsのユーザ認証を行っていますが、UNIX環境の認証(NIS)とアカウントやパスワードの同期をとらせ、一元管理する場合は、やはり、Service for UNIXやLDAP、Kerberosを利用する方法しかないのでしょうか。すいませんが、アドバイスください。

  • tomcat ldap認証につきまして。

    ◆環境 centos6.7(64bit) apache2.2.27 tomcat 8.0.28 java version "1.8.0_65" ◆やりたいこと。 上記の環境で、basic認証周りを勉強しています。 通常のtomcat-users.xml での認証ではなくldapに登録しているグループ・ユーザーで認証できるように設定がしたいと考えています。 その中で、いろいろなサイトを見ていますと、tomcatの場合はActive Directory認証の内容が よく掲載されています。 私の中で、ldap認証で行いたいと思っているのですが、中々参考になるサイトが 見つからず。 理想は、http://www.server-world.info/query?os=CentOS_6&p=ldap&f=[1-9] で構築したldapで、tomcat managerなどの認証を行いたいと考えています。 すいません、上記設定が載っている参考になるサイトなどご教授いただければと思います。

  • LDAP認証について

    お世話になっております。 この質問がこのカテゴリであっているか自身がありませんが、実行プログラムがASPなため、このカテゴリに質問させて頂きます。 LDAP認証をする場合、OUがない、ActiveDirectoryは、OUに何を指定すればいいのでしょうか?「Users」でいいのでしょうか? 以下プログラム strLdapPath="LDAP://xxx.xxx.xxx.xxx/CN=123,OU=???,DC=xxx,DC=xxx" strUserID="123" strPassword="****" Set obj = objLdap.OpenDSObject(strLdapPath, strUserID, strPassword, 0) よろしくお願い致します。

  • Rails ActiveDirectoryについて

    RailsにてActiveDirectoryへの認証をしようとしています。 net-ldapのgemを使用しています。 conn.bindでTrueが返ってくるので接続は出来ていると思いますが、 そこから、ユーザID、パスワードを検索することができません。 どなたか、詳しい方がいらっしゃいましたら、ご教授願います。 conn = Net::LDAP.new :host => SERVER, :port => PORT if conn.bind ここでユーザID、パスワードを検索して、合致すれば認証OKとしたい end 【環境】 Ruby 2.2.2 Rails 4.0.13 net-ldap (0.11) 以上、宜しくお願いします。

    • ベストアンサー
    • Ruby
  • ActiveDirectoryのログイン認証時に使用したユーザー名の取得

    ActiveDirectoryのログイン認証時に使用したユーザー名、パスワードをHTMLページで取得する方法がわかりません。 ログインのタイミングはhtmlページのActiveDirectoryのあるサーバのHTMLファイルへのリンククリックでActiveDirectoryのあるサーバに接続します。 htmlページは認証後、画面移動で表示されます。 認証で使用したユーザー名、パスワードをHTMLの中でも使用したいと思っています。 サーバーのOSはWindows2000サーバーで、WebサーバはIISを使用しています

  • PHPでの認証方法

    お世話になります。 現在PHP言語でのActive Directoryへの認証を考えています。 KADM5関数やLDAP関数等を使用するらしい事は分かったのですけれども、使い方がよく分からなくて困っています。 例えば、 サーバー名が「server01」 ドメインが「d01」 ユーザーアカウント「user01」 パスワードが「abc」 の認証を、直接WEBページのフォームからユーザーIDと パスワードを入れて、認証が出来ます基本的な例文などがございましたら、教えていただけましたらと思っています。 また、できましたら、パスワードの期限がきました時の変更などもweb上で、できましたらと思っています。 よろしくお願いいたします。

    • 締切済み
    • PHP