AzureでホストされているASP.NET Webサイトでは、特定のユーザーだけがアクセスできるようにページを保護する必要があります。ページで使用されるjavascriptライブラリのために、HTTP経由で提供された場合にのみ正しく動作しますが、HTTPS経由でページが提供されない限り、ASP.NET認証はアクセスを許可しません。セキュアなページへのアクセスを制限するページにHTTPが必要です。 ASP.NET認可にはHTTPSが必要です
、私はページを含むフォルダにWeb.configファイルを追加しました:
<configuration>
<system.web>
<authorization>
<allow roles="Admin" />
<allow roles="Map Viewer" />
<deny users="*" />
</authorization>
</system.web>
</configuration>
メインweb.configファイルは、フォーム認証を設定します。
<authentication mode="Forms">
<forms loginUrl="~/account/login/"
requireSSL="true"
timeout="2880" />
</authentication>
は、https(例えばhttps://example.com/Map)を介して保護されたページにアクセスする場合、これは魔法のように動作します。ログインするように求められ、資格情報を入力すると、そのページに移動します。上記のように、httpで配信される場合、ページは正しく動作しません。ただし、ASP.NET認証/承認ではアクセスできません。 1.ログインしていない場合は、httpでページにアクセスしようとすると、ログインするとサイトホームページにリダイレクトされます。 2既にログインしていてもログイン画面にログインした場合、ログイン画面に表示されます。
HTTPが正しく動作するためにはHTTPが必要ですベースの認証プロセスは、長年にわたりそれらのページのために正常に動作しています。
なぜJavaScriptライブラリにHTTPが必要ですか?私はそれに疑念を抱いていますが、本当に真実ならば、その図書館を発砲して交換を見つけるべきです。 –
[link](https://cartodb.com/)はHTTPS経由でライブラリを提供していません - HTTPに戻ってしまいます。 JSライブラリーをサーバーにコピーしようとしましたが、ライブラリーによってロードされたマップ・タイルはHTTPSを経由しません。 –
セキュリティに関して深刻でないように見えるので、CartoDBをドロップするだけで十分でしょう。 –