gpt4 book ai didi

asp.net-mvc-2 - Windows Azure "Sandbox"

转载 作者:行者123 更新时间:2023-12-02 08:10:47 28 4
gpt4 key购买 nike

所以我有一个在 Windows Azure 上运行的 MVC 2 应用程序。

一切正常,但我想创建一个子域,我可以在其中测试一些我需要实际服务器的东西,但我不希望任何人看到它。但是,如果我只是像 www.mywebsite.com/sandbox 一样发布 - 任何人都可以在技术上访问它,即使他们必须知道它在那里,这是我不想要的。

我是否可以轻松设置类似的内容并使用密码保护它或其他内容?如果是这样,我会为私有(private)管理 URL 使用同样的东西,团队成员只能进入并检查内容(使用我维护的用户名/密码)。

最佳答案

据我所知,您有两种选择。

  1. 创建临时部署,并使 IIS 网站响应特定 DNS 请求(例如 http://sandbox.mywebsite.nothere )。更改您的 DNS 设置,或更改本地主机文件(例如在 C:\Windows\System32\drivers\etc\hosts 中)。这是通过默默无闻实现的安全性,虽然它并不有效,但它很简单,也许是一个好的开始。
  2. 正如 Steve Morgan 在评论中所建议的,在您的应用程序中实现身份验证。如果您有 ASP.NET(无论是否为 MVC)应用程序(我在示例中假设为 MVC),您可以执行以下操作:

    • 创建一个 MembershipController
    • 创建一个接受用户名和密码的登录操作,实现如下所示:

      公共(public)虚拟ActionResult登录(Qinoa.Web.Models.LoginData模型) { if(model.Username == "myuser"&& model.Password == "hardcodedPassword") { FormsAuthentication.SetAuthCookie("myuser", model.RememberMe); } 返回 RedirectToAction(MVC.Home.Index()); }

在您的 web.config 文件中设置

<authentication mode="Forms">
<forms loginUrl="~/Membership/Login" timeout="2880" />
</authentication>

在所有测试容器上添加 [Authorize] 属性。您的应用程序现已(基本)受到保护。

附注#1:您可以在一个网络角色上托管多个网站。

关于asp.net-mvc-2 - Windows Azure "Sandbox",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6670930/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com