• 締切済み

ASP.NET MVC 最初からあるログイン機能

こんにちは。 初心者向け書籍でASP.NET MVCの独学を始めたばかりのものです。 現在プログラムを書く用のパソコンと、SQL Serverをインストールしてあるパソコンが別々な環境で学習書籍を進めています。そのなかでWebアプリケーションに最初から備わっているログイン機能(デフォルト状態のView画面右上についている"ログイン"の機能)を使うところがあるのですが、ローカルにSQL Serverをインストールしてある前提なので、私の環境ではエラーになります。 そこで質問なのですが、以下の環境でWebアプリに最初から備わっているログイン機能を使用するにはどうすればよいのかご教示ください。 VS2010を使っているパソコン:192.168.1.1 SQL Server2008が入っているパソコン:192.168.1.2 SQL Serverの認証方法:SQL Server認証(ID:admin Pass:admin) 言語 C# ちなみに、ログイン機能以外のデータベースアクセスは問題なくできています。 補足すべき情報があったらご指摘ください。 よろしくお願いします。

  • pouta
  • お礼率72% (61/84)

みんなの回答

  • onos
  • ベストアンサー率81% (127/155)
回答No.1

ASP.NET MVCのログイン機能はバージョンによって使ってるDBの形式が、、、MVCの最新バージョンだとここにちょっと手がはいっているので気をつける必要があります。 で、MVCの最新のバージョンでなければログインで利用するDBはもともとASP.NETでWebForm用に用意されていたDBと同じです。 その考えて情報をさぐれば必要な情報をみつけられるかと。 たとえばこれは参考になるかな? http://blogonos.wordpress.com/2006/02/15/%e3%83%ac%e3%83%b3%e3%82%bf%e3%83%ab%e3%82%b5%e3%83%bc%e3%83%90%e3%81%a7%e3%83%ad%e3%82%b0%e3%82%a4%e3%83%b3%e3%82%b3%e3%83%b3%e3%83%88%e3%83%ad%e3%83%bc%e3%83%ab%e3%82%92%e5%88%a9%e7%94%a8%e3%81%99/ あと、VS2010をインストールした際、通常はSQL ServerのExpress版がはいっていると思います。 で、ASP.NET MVCのプロジェクトを作って一度ログイン機能を実行するとDBがつくられるはず。 そのDBを実際に利用するSQL Serverの中にもっていって動くようにすればあとはDBへの接続文字列を変えることで動くと思います。

pouta
質問者

お礼

すみません自己解決です。 お騒がせしました。 同じ情報を探してここにくる人向けにソリューションを書いておきます。 VS2010に付属している aspnet_regsql.exe というツールで SQL Server にユーザー認証用データベースをつくり、Webアプリごとに存在する web.config 設定ファイルの "ApplicationServices" ディレクティブにそのデータベースを指定すればいいようです。接続文字列は通常のデータベース接続時と同じです。

関連するQ&A

  • ログインが必要 Asp.net MVC2

    Asp.net MVC 2の勉強をしています。 一番最初のASP.NET MVC2 Web アプリケーションのプロジェクトを作りました。 デバッグは全然問題ないですが、発行後画面を開こうとすると、下記のエラーが出ました。  HTTP403  Web サイトによってこのページの表示を拒否されました   •この Web サイトを表示するにはログインが必要です。 IISのバージョンは5.1 解決方法お願いします。

  • ログイン機能つきのHPを作成したい

    ログイン機能つきのHPを作成したい タイトルの通りなのですが IDとPASSを入力してログインできるHPを作成したいと思っています。 ログインした状態でPASSとかを変更できるのがベストです。 HTMLでログイン画面は作成したのですが その後どうして良いかわかりません。 レンタルサーバーではなく自鯖をたててやりたいと思っています どのように作ったらいいかなどの手順が載っているHPをご存知でしたら教えてください。 どのようなソフトをインストールしておけば良いみたいなのも 教えていただけると助かります。 無料で使えるものが良いです。

  • ログインユーザ(sa)について

    Windows7 環境で SQL Server 2008 Express を インストールしたのですが、saでログインできませんでした。 インストール時の認証モードには「混合モード」を選択しました。 自分なりに調べた結果、 『windows認証でログイン後、[オブジェクトエクスプローラ]の [セキュリティ]-[ログイン]より「sa」アカウントを選択して[プロパティ]を開き、 「sa」のログインを「有効にする」』 とあったので試したところ、「エラー:15151」が発生し、変更できませんでした。 関係ないかもしれませんが、 「BUILTIN\Users」に「sysadmin」ロールを付与しようとしても、 「エラー:15247」でできませんでした。 どうすれば『「sa」のログインを「有効にする」』ことができるのでしょうか。 どなたか、ご教示宜しくお願いいたします。

  • SQLServer2000でログインできません

    Windows2000SP4、IISの環境です。 1.SQLServer2000の認証:Windows認証を使用 2.ODBC接続時、 1)接続するサーバ名:Local 2)SQL ServerがログインIDの権限の確認を行う方法は    :ネットワークへのログインIDでWindows NTの認証メカニズムを使う 3.ASPファイルで以下のように記述しています。 Set Conn = Server.CreateObject(\"ADODB.Connection\") Conn.Open \"DSN=*****ODBCで登録した名前\" 4.エラーメッセージ: Microsoft OLE DB Provider for ODBC Drivers (0x80040E4D) [Microsoft][ODBC SQL Server Driver][SQL Server]ユーザー \'*****(私のサーバ名)\' はログインできませんでした。 index.asp, line 22 5.その他 SQLクエリアナライザでは何も問題なく接続できます。 以上、説明が不十分かもしれません。 なぜログインできないか、ご存知の方教えてください。よろしくお願いします。

  • ログインコントロールを画面遷移上で複数使いたい

    ASP.NET 2.0、SQL server 2008とIIS7.0の、Form認証で以下のような画面遷移を考えています。 (1)最初にログイン用の画面。ログインコントロールが貼ってあるだけ。 (2)(1)でログイン後以降の画面はフォルダを別にし、そのフォルダのWeb.Configで、(1)でログインしたユーザーのみ許可。 (3)(2)の画面に"管理人用ページ"へ遷移するリンクがあり、クリックすると管理人用ログインページを表示する。ログインコントロールが貼ってあるだけ。 (4)(3)でログイン後以降の画面はフォルダを別にし、そのフォルダのWeb.configで(3)でログインしたユーザのみ許可。 (1)でログインできるユーザと(3)でログインできるユーザには重複はないようにしたいんですが、今はまったく同じになってしまっています。 SQL ServerにはaspnetdbというDBが一つだけあるのですが、 たとえば(1)の画面ではaspnetdb_1、(3)の画面ではaspnetdb_3を参照する、などという芸当は可能なのでしょうか。 もしくはaspnetdb1つで、2つの種類のユーザ情報を管理できるのでしょうか。

  • Auユーザーがログインできない

    ASPとHTMLでIDとPassによるログイン画面を作成したのですが、Auの古い機種のユーザーがログインできません。 DocomoやVodafone,AuのデバイスIDが○○20以上の機種のユーザーはログインできているんで、Auの古い機種に対応できていないプログラムがあると思うのですが、分かる方いますか? フォームで入力したID,Passをメソッド=Getで同じページに送信し、Request.QueryStringで受け取っています。 それをSQLでデータベースから認証し、一致すれば Response.Redirectでメインページに飛ばすようにしています。認証が不一致ならログインページが再表示され "IDもしくはPassが違います"とエラー文が表示されるはずなんですけど、それも表示されずログイン画面が再表示されます。認証は一致しているが、Response.Redirectで飛ばされていないという事なんでしょうか? ちなみに、C1002SやA1013Kの機種でその現象が確認されています。分かる方、どうぞ宜しくお願いします。

  • Java Struts MVCモデル 正しい書き方

    Java Struts1.3.10 皆でとあるシステムを作ることになったのですが、 JSP・ActionForm・Actionそれぞれの関係の在り方について悩んでいます。 ログイン機能を例とします。 1機能、1Form、1Actionとした場合は: 1.Login.jspでIDとPASSを入力。 2.LoginResultForm.javaにIDとPASSを格納。 3.LoginResultAction.javaでDBチェック(IDとPASSの存在・権限) 4.Result.jspへ遷移。ID・PASS・権限を表示する 使用するファイルは4つとなります。 1JSP、1Form1、Actionとした場合は: 1.Login.jspでIDとPASSを入力。 2.LoginForm.javaにIDとPASSを格納。 3.LoginAction.javaでDBチェック(IDとPASSの存在) 4.ResultForm.javaにIDとPASSを渡す(Sessionなど) 5.ResultAction.javaでDBから権限を取得、ResultFormに格納 6.Result.jspへ遷移。ID・PASS・権限を表示する 使用するファイルは6つとなります。 現在意見が三つありまして、 1.違うForm同士にデータのやり取りが発生するようであれば(1機能とし)、同じフォームにするべきではないのか? 2.Fromのメンバの数が少ないうちは良いが、今後数が増えると可読性が悪くなるから分けるべきではないのか? 3.フォームは同じでないとまずいが、ActionはJSPごとに分けるべき というものです。 1.ではログイン者情報をセッションに保持することは許可しています。(一部例外を認めている) これらはいずれもStrutsフレームワークの範疇から逸脱している、あるいはMVCモデルに反している、そもそも非効率的ということはないのでしょうか? つまりあくまで実装の仕方の問題でしかない、という結論でよろしいでしょうか?

    • ベストアンサー
    • Java
  • asp.netと通信について

    おせわになります。web関連はド素人なのですが、仕事で計測したデータを遠方にあるパソコンからwebで閲覧できるプログラムをつくらなければならなくなりました。自社またはレンタルサーバーは持たないとの意向なのですが、サーバーを利用しないで直接遠方にあるパソコンとデータのやりとり、またはwebプログラム閲覧できるものなのでしょうか?プログラムはvs2008 asp.net c#を使って作ればよいのかと思っております。webで表示できるプログラムができたとして、遠方のパソコンからデータ計測しているパソコンのアドレスなどもわからないし…、ド素人ゆえ質問内容がおかしいかもしれませんが どのようにすればいいかざっくり説明をしてくれるかた、ご教授お願い致します。 環境 os:windows xp か windows 7 開発:vs2008 言語:c#

  • デフォルトインストール状態のSQL SERVER2005のアカウントとパスワード

    基本的にデフォルトの状態でインストールしたSQL SERVER 2005があるのですが、ログインしようとしましたが方法がわかりません。 SQL SERVER 2000では、Enterprise ManagerというツールでWindwos認証やSQL Server認証でログインできるツールがあったのですが、2005では スタートメニューから探しても見当たりませんでした。 osql -U -Pでも試したのですが、SAというアカウントでパスワードはデフォルトで何が入っていたのでしょうか? SQL SERVERを体系的に学びたいのですが、何か良書はありますか?

  • ログインができないので教えてください

    ある医療機関のウェブページから健康診断の予約をしようとしてIDとPASSを入力してログインしようとしたら、ページが真っ白で全く表示されません。 ちなみにIDとPASSは合っています。 ログイン画面の注意書きに、「cookieを許可してください」とか「ポップアップ機能を無効にしてください」や他には 「InternetExplorer6以上、safari5以上」とかあります。全て満たしているのですができません。 何が悪いかわかる方いますか?お願いします!! 健康診断以外の、普通の診療予約ではログインができました。