C'è un modo in asp.net per limitare l'accesso a una pagina Web solo da localhost?Come limitare l'accesso alla pagina solo a localhost?
8
A
risposta
0
questa potrebbe essere una soluzione:
protected void Page_Load(object sender, EventArgs e)
{
string localhost = Request.Url.Authority;
if (localhost.IndexOf("localhost") != 0)
Response.Redirect("defalut.aspx");
}
6
Se si vuole fare questo per una "pagina web" allora io userei IsLocal, ma se si desidera una soluzione sottodirectory userei URL Rewrite 2 http://www.microsoft.com/web/gallery/install.aspx?appid=urlrewrite2. Se non lo hai già installato, vai a prenderlo perché è molto utile. Credo che sarà standard su IIS8.
Quindi aggiungere questo al vostro web.config sotto <system.webServer/>
<rewrite>
<rules>
<!-- if this rule matches stopProcessing any further rules -->
<rule name="Block Remote Access to Admin" stopProcessing="true" patternSyntax="ECMAScript" enabled="true">
<!-- specify secure folder matching trailing/or $ == end of string-->
<match url="projects(/|$)" ignoreCase="true" />
<conditions logicalGrouping="MatchAll">
<!-- Allow local host -->
<add input="{REMOTE_ADDR}" pattern="localhost" ignoreCase="true" negate="true" />
<add input="{REMOTE_ADDR}" pattern="127.0.0.1" negate="true" />
<add input="{REMOTE_ADDR}" pattern="::1" negate="true" />
</conditions>
<!-- by default, deny all requests. Options here are "AbortRequest" (drop connection), "Redirect" to a 403 page, "CustomResponse", etc. -->
<action type="CustomResponse" statusCode="403" statusDescription="Forbidden" statusReason="Access to this URL is restricted"/>
<!-- or send the caller to an error page, home page etc
<action type="Redirect" url="/public/forbidden.htm" redirectType="Temporary" />
-->
</rule>
<rules>
</rewrite>
12
if (!HttpContext.Current.Request.IsLocal)
{
Response.Status = "403 Forbidden";
Response.End();
}
0
Afferra il 'REMOTE_ADDR' ed eseguirlo contro una regex.
Dim remoteAddress As String = Request.ServerVariables("REMOTE_ADDR")
If Regex.IsMatch(remoteAddress, "(::1|127\.0\.0\.1)") Then
//Call originated from localhost, display page..
End If
devo aggiungere ::1
è come localhost è disponibile se il server è configurato per IPv6
Problemi correlati
- 1. Come limitare l'accesso alla cartella/file ad un solo programma?
- 2. IIS: impossibile accedere alla pagina tramite indirizzo IP anziché localhost
- 3. Plupload - Limitare a un solo file
- 4. Configura WCF per ascolto solo LOCALHOST
- 5. Accedere alla pagina solo tramite SSL
- 6. Come impostare xampp open localhost: 8080 invece di solo localhost
- 7. tcpdump: localhost a localhost
- 8. Come creare un socket Java che sia solo localhost?
- 9. Limitare Window.SizeToContent per espandere solo
- 10. Come ascoltare solo su localhost su MongoDB
- 11. Come limitare una vista solo al superutente?
- 12. Come limitare Primefaces inputMask ai numeri solo?
- 13. Come reindirizzare alla stessa pagina in PHP
- 14. .htaccess per limitare l'accesso alla cartella
- 15. Accettare le richieste get/post solo da localhost
- 16. Mostra popup jQuery solo alla prima visita di una pagina
- 17. Come limitare l'accesso JSON?
- 18. come reindirizzare alla pagina iniziale
- 19. Chrome - Disabilita la cache solo per localhost?
- 20. QTcpServer si può accedere solo tramite localhost
- 21. Come proteggere Jetty per consentire l'accesso solo da loopback (localhost)
- 22. Come limitare la mia app alla modalità orizzontale?
- 23. Come limitare gli indici delle tabulazioni solo a un overlay e ai relativi elementi
- 24. Localhost Drupal reindirizzamento a www.localhost.com
- 25. Come limitare EditText solo ai caratteri specificati in Android?
- 26. SqlLite con salto (offset) solo (non limitare)
- 27. Come limitare EditText per inserire solo valori float in Java?
- 28. Come ottenere Node.JS Express per l'ascolto solo su localhost?
- 29. Facebook Graph API PHP SDK pubblicazione alla pagina come pagina
- 30. Come limitare un protocollo solo ai tipi di valore?
Che cosa vuoi che accada se una richiesta non localhost è fatto? – freefaller
limitare l'accesso – zirus
Sì, penso che capiamo che l'accesso è limitato ... ma esattamente ** cosa ** dovrebbe accadere? ** Cosa ** dovrebbe vedere l'utente? Potrebbero essere diretti da qualche parte? (Se stai rispondendo ad un individuo, devi inserire un '@' seguito dal loro nome utente, altrimenti non riceveranno una notifica) – freefaller