9

運用マシンでasp.net sqlメンバーシップロール/メンバーシッププロバイダーをどのようにセットアップしますか? BlogEngine.NET をセットアップしようとしていますが、すべてのドキュメントには Visual Studio から ASP.NET Web サイト管理ツールを使用するように記載されていますが、運用マシンでは使用できません。非開発ボックスで使用する初めての BlogEngine ユーザーですか?

SQL サーバーは、実稼働ボックス以外のすべてから完全にブロックされていますが、そこには SQL Management Studio があります。

編集: つまり、テーブルを作成する方法ではなく、新しいユーザー/ロールを追加する方法です。既に aspnet_regsql を実行してスキーマを作成しました。

EDIT2: データベースにも初期ユーザーが必要なため、MyWSAT は機能しません。接続文字列だけで、認証なしでメンバーシップ データベースに新しいユーザーを作成できるアプリケーションが必要です。

4

5 に答える 5

5

アプリケーションの起動時にデフォルトのスーパーユーザーを設定することで、この問題を解決しました。

これを gobal.asax に追加することで


    void Application_Start(object sender, EventArgs e) 
    {
        // Code that runs on application startup

        // check that the minimal security settings are created
        Security.SetupSecurity();
    }

次に、セキュリティ クラスで:

システムを使用する;
System.Data の使用;
System.Configuration を使用します。
System.Web の使用;
System.Web.Security を使用します。
System.Web.UI を使用します。
System.Web.UI.HtmlControls を使用します。
System.Web.UI.WebControls を使用します。
System.Web.UI.WebControls.WebParts を使用します。

///
/// アプリケーション アクセス用の最小限のロールとユーザーを作成します。
///
パブリック クラス セキュリティ
{
    // アプリケーションの役割
    public static string[] applicationRoles =
        { "役割 1"、"役割 2"、"役割 3"、"役割 4"、"役割 5" };
    // スーパーユーザー
    プライベート静的文字列 superUser = "super";
    // デフォルトのパスワード。最初の接続時に変更する必要があります
    プライベート静的文字列 superUserPassword = "default";

    プライベート セキュリティ()
    {
        ///
        // TODO: ここにコンストラクタ ロジックを追加します
        ///
    }

    ///
    /// 最小限のメンバーシップ環境を作成します。
    ///
    public static void SetupSecurity()
    {
        SetupRoles();
        SetupSuperuser();
    }

    ///
    /// ロールをチェックし、不足を作成します。
    ///
    public static void SetupRoles()
    {
        // ロールを作成
        for (int i = 0; i
    /// スーパーユーザー アカウントが作成されているかどうかを確認します。
    /// アカウントを作成し、すべてのロールに割り当てます。
    ///
    public static void SetupSuperuser()
    {
        // スーパーユーザーを作成
        MembershipUser ユーザー = Membership.GetUser(スーパーユーザー);
        if (ユーザー == null)
            Membership.CreateUser(superUser, superUserPassword, "maintenance@acorel.com");

        // スーパーユーザーを役割に割り当てる
        for (int i = 0; i

デフォルトのユーザーを取得したら、AspNetWSAT などを使用できます。

于 2008-10-01T15:31:50.930 に答える
4

解決策1(標準、貧弱):VisualStudio->Webサイトメニュー->ASP.NET構成。

ソリューション2(推奨):AspNetWSAT(展開が簡単で、非常に強力)

于 2008-10-01T07:55:12.837 に答える
0

マシンに .NET 2.0 をインストールする必要があります。VS ツールはすべて、フレームワークの一部であるコマンド ライン ツールの GUI ラッパーです。

C:\Windows\Microsoft.NET\Framework\v2.0.50727 でアプリ aspnet_regsql.exe を確認します。

/? コマンド ライン スイッチの場合、ウィザード モードの場合は /W

于 2008-10-01T07:33:41.937 に答える
0

メンバーシップを管理する IIS の機能を確認しましたか? 運用サーバーの IIS で ASP.NET タブに移動し、これが役立つかどうかを確認します。

于 2008-10-01T15:19:42.583 に答える