C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[6]: 複数のサイトを構築する。


(過去ログ 88 を表示中)

[トピック内 9 記事 (1 - 9 表示)]  << 0 >>

■51939 / inTopicNo.1)  複数のサイトを構築する。
  
□投稿者/ じいおい (10回)-(2010/07/26(Mon) 23:39:44)

分類:[ASP.NET (VB)] 

VB2008、ASP.NETでWEBアプリケーションを作成しています。
今までは、フォーム認証での単発のWEBアプリケーションでした。
(login.aspxで認証、default.aspxに飛ぶ、そこから作図するdrawing.aspxに飛ぶ。ような)
これを複数合わせる場合、どのように構築すればいいのかわかりません。
やりたい事のイメージは、
ログイン
↓
メニュー
↓    ↓    ↓    ↓
サイトA サイトB サイトC サイトD
で、このサイトA、サイトB・・・とかが、今までの単発のWEBアプリで、その手前にログインがあり、ユーザー毎にメニューから飛べるサイトが変わる仕様です。
今、私が考える事が出来るのは、
この全てを含むフォーム認証の大きなサイトです。
でも、あまりに管理が大変でサイトが増えて行けば、ゾッとします。

通常は、どのように構築するものなのでしょうか?
御教授よろしくお願いいたします。



引用返信 編集キー/
■51952 / inTopicNo.2)  Re[1]: 複数のサイトを構築する。
□投稿者/ マサヤ (79回)-(2010/07/27(Tue) 10:24:34)
ユーザごとに権限が設定されていて、遷移できるページが異なる。

例)Aさんは サイト1とサイト2を閲覧できます。
  Bさんは サイト1のみ閲覧できます。
  Cさんは サイト1とサイト2とサイト3を閲覧できます。
  Dさんは サイト1とサイト2を閲覧できます。
のようにユーザごとにメニューに表示される遷移先が設定されている。

認識はあっておりますでしょうか?
引用返信 編集キー/
■51956 / inTopicNo.3)  Re[2]: 複数のサイトを構築する。
□投稿者/ 中博俊 (1433回)-(2010/07/27(Tue) 10:46:35)
方法は2つあって、
1つのアプリケーションとして設計する
複数のアプリケーションとして設計する。

1つのアプリケーションとしてログイン情報とセッションを持ち回る。これは普通の大きなアプリになるだけですね。
各サイトのセキュリティ権限はユーザー管理として一元管理すればいいです。

後者のやり方の場合にはログインのところでオリジナルのセッションID的な物を払い出します。
そしてサイトに入ったときにそのセッションIDをアプリのセッションと結びつけます。
SSOといわれる仕掛けです。

どちらがいいかは難しいですが、後者のやりかたのほうがサイト間の独立性は保ちやすいのでそっちを選ぶかなー

URLの条件とか、バックエンドは共通に参照できるのかなどいろいろ他にも検討すべきポイント有ります。
引用返信 編集キー/
■51958 / inTopicNo.4)  Re[3]: 複数のサイトを構築する。
□投稿者/ じいおい (11回)-(2010/07/27(Tue) 11:16:54)
マサヤ様、中様返信ありがとうございます。

No51952 (マサヤ さん) に返信
> ユーザごとに権限が設定されていて、遷移できるページが異なる。
>
> 例)Aさんは サイト1とサイト2を閲覧できます。
>   Bさんは サイト1のみ閲覧できます。
>   Cさんは サイト1とサイト2とサイト3を閲覧できます。
>   Dさんは サイト1とサイト2を閲覧できます。
> のようにユーザごとにメニューに表示される遷移先が設定されている。
>
> 認識はあっておりますでしょうか?
そのとおりです。
各サイトの構造は、非常に似ており、各々ページの名前まで一緒です。
例)login.aspx、default.aspx、drawing.aspxのフォーム認証
これを、一つのアプリケーションにすると、default1.aspx、default2.aspx・・・と名前を変えていかないといけない。のかと思っています。



No51956 (中博俊 さん) に返信
是非、後者のやり方でやりたいと思います。

> 後者のやり方の場合にはログインのところでオリジナルのセッションID的な物を払い出します。
フォーム認証をずっと使ってきて、使いたいのですが、これはフォーム認証で出来るのでしょうか?


> そしてサイトに入ったときにそのセッションIDをアプリのセッションと結びつけます。
> SSOといわれる仕掛けです。
> URLの条件とか、バックエンドは共通に参照できるのかなどいろいろ他にも検討すべきポイント有ります。
検討すべきポイント等教えていただければ幸いです。



引用返信 編集キー/
■51962 / inTopicNo.5)  Re[4]: 複数のサイトを構築する。
□投稿者/ 中博俊 (1435回)-(2010/07/27(Tue) 12:11:28)
コンサル契約します?
それだけの情報じゃ何も技術的には分からないし、がんばってとしか言えません。
フォーム認証は自由に認証できるので、可能です。


引用返信 編集キー/
■51963 / inTopicNo.6)  Re[5]: 複数のサイトを構築する。
□投稿者/ マサヤ (80回)-(2010/07/27(Tue) 12:25:01)
>そのとおりです。
>各サイトの構造は、非常に似ており、各々ページの名前まで一緒です。
>例)login.aspx、default.aspx、drawing.aspxのフォーム認証
>これを、一つのアプリケーションにすると、default1.aspx、default2.aspx・・・と名前を変えていかないといけない。のかと思っています。
ページの名前は同じでも別サイトなら階層とか異なるんですよね?
それならdefault.aspxはメニュー画面に当たるから、それぞれのサイトを権限ごとに表示したらいいのでは?

シングルサインオンサーバを立てて、フォーム認証情報をサーバに格納(Session)してあげれば各サイトで認証が取れるのでは?

引用返信 編集キー/
■51964 / inTopicNo.7)  Re[6]: 複数のサイトを構築する。
□投稿者/ なちゃ (460回)-(2010/07/27(Tue) 12:41:07)
サーバを分けないのなら、デフォルトのフォーム認証でも認証クッキーを共有することは一応可能です。

引用返信 編集キー/
■51974 / inTopicNo.8)  Re[5]: 複数のサイトを構築する。
□投稿者/ じいおい (12回)-(2010/07/27(Tue) 15:45:15)
No51962 (中博俊 さん) に返信
> コンサル契約します?
そんな方法もあるのですね。最後の砦として心に留めさせていただきます。
> それだけの情報じゃ何も技術的には分からないし、がんばってとしか言えません。
> フォーム認証は自由に認証できるので、可能です。
フォーム認証が可能だと分かるだけでもありがたいです。


No51963 (マサヤ さん) に返信
> ページの名前は同じでも別サイトなら階層とか異なるんですよね?
> それならdefault.aspxはメニュー画面に当たるから、それぞれのサイトを権限ごとに表示したらいいのでは?
> シングルサインオンサーバを立てて、フォーム認証情報をサーバに格納(Session)してあげれば各サイトで認証が取れるのでは?
それぞれにフォルダ毎に格納しており、そのフォルダを仮想ディレクトリとして作成しています。
シングルサインオンサーバというのを立てると良いのですね。少し調べて見ます。


No51964 (なちゃ さん) に返信
> サーバを分けないのなら、デフォルトのフォーム認証でも認証クッキーを共有することは一応可能です。
サーバは分けません。仮想ディレクトリーが一つでも良いと言うことですか?
その場合、各サイトの各フォルダとの関係はどうなるのでしょう?





引用返信 編集キー/
■52462 / inTopicNo.9)  Re[6]: 複数のサイトを構築する。
□投稿者/ じいおい (13回)-(2010/08/10(Tue) 10:27:19)
皆様に教えていただいてなんとか実現出来ました。

フォーム認証を複数のWEBアプリケーションで使用する方法です。
web.configファイルの
machineKey要素 使用する暗号キーと
authentication要素 Forms設定して
各アプリケーションにコピーする。

これで一度認証すると、他のアプリケーションではもう認証を聞いてこなくなりました。

全く分からない状態からここまで出来ましたのは、皆様のおかげです。
どうもありがとうございました。

解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -