2016-11-29 9 views
-1

私はsymfony2プロジェクトを開発しました。私はこのプロジェクトをテストと開発中にパスワードで保護したいと思っています。言い換えれば、私は完全にテストされるまでプロジェクトのパスワードを保護したいと思っており、それは公開されています。これを行うにはいくつかの方法がありますか?助けてください。前もって感謝します。テストと開発中にsymfonyプロジェクトのパスワードを保護する方法

+0

あなたは、人々がその準備ができるまで、あなたのウェブサイトにアクセスしたいいけないわけできるだけ早く –

+0

を助けてください? –

+0

はい。実際には、すでに安全な別のユーザータイプと管理者を持っています。しかし、私はこのセキュリティを他のすべてのセキュリティの上位レベルでも公開したいと思います。 –

答えて

2

あなたが達成したいのは、許可されていないユーザーがあなたのサイトにアクセスするのをブロックすることです。あなたは簡単なhtaccessパスワード保護でこれを達成することができます。

パスワード保護するディレクトリに.htaccessと.htpasswdという2つのファイルをアップロードして動作します。 .htaccessファイルが含まれている必要があります

AuthType Basic 
AuthName "Password Protected Area" 
AuthUserFile /path/to/.htpasswd 
Require valid-user 

は、あなただけのあなたの.htpasswdへのフルパスで「/path/to/.htpasswd」に変更する必要があります。

の.htpasswdファイルが含まれている必要があります

test:dGRkPurkuWmW2 

上記のコードは、ユーザーの「テスト」は、パスワード「テスト」でパスワードproteced領域にアクセスできるようになります。テキスト「dGRkPurkuWmW2」は、パスワードの暗号化されたバージョンです。別のパスワードを作成するには、htpasswdジェネレータを使用する必要があります。 .htpasswdファイルの各行にはユーザー名とパスワードの組み合わせが含まれていますので、好きなだけ多くの組み合わせを追加できます。

パスワードジェネレータ:http://www.htaccesstools.com/htpasswd-generator/

出典:Symfony2のプロジェクトのためにhttp://www.htaccesstools.com/articles/password-protection/

新しい.htaccessファイルは、Webディレクトリに作成する必要があります。私は、セットアップのdevの環境に通常何

project/ 
-web/ 
+0

私は完全なパットについて少し考えを与える。finnalのように見える方法 –

+0

結果は2つのファイルでなければなりません:.htaccessと.htpasswdはindex.phpファイルと同じディレクトリにあります。 –

+0

.htpasswdの最終パスは./.htpasswdになります。私は正しい?私はsymfonyがリンクを生成するためにこれを必要としていたので、既に私のルートに.htaccessを持っています。 –

1

があります「プライベート」なサブドメインを使用する。プライベートでは、それを指すDNSレコードがないことを意味します。自分のコンピュータから到達可能にするためにhostsファイルに行を追加します。私はそれを外部apisに公開する必要がある場合(例えば支払いゲートウェイの応答)、私はDNSレコードを作成しますが、特定のIPアドレスだけを受け入れるようにファイアウォールを設定します。

何らかの種類の認証を使用すると、これらの種類のサービス(PayPal、クレジットカード決済ゲートウェイなど)はサイトに接続できなくなり、テストできなくなることにご注意ください。

+1

DNSレコードを持っていないので、何も「確保」していないので、私はこのアプローチについて助言しません。 – Gerry

+0

私はあなたに同意します。私の提案は、利用可能な疑似民間開発環境を持つことに焦点を当てています。 – Carlos

2

環境ごとにセキュリティコンポーネントを簡単に設定できます。ただ、たとえばconfig_dev.ymlために、適切な設定ファイルを開き、例えば、適切なセキュリティ設定を上書き/追加:

security: 
    providers: 
     my_provider: 
      memory: 
       users: 
        foo: { password: foo, roles: ROLE_USER } 
    firewalls: 
     your_firewall_name: 
      http_basic: ~ 
関連する問題