最小8文字の英数字のパスワードルールを実装します。新しいフィールドと確認フィールドが現在チェックされています。これらのルールは、ユーザーの新しいインスタンスを作成し、既存のユーザーのパスワード機能を変更するときに適用する必要があります。 1)これを行うことができるgrailsプラグインがある場合。 2)プラグインなしで手動で行うことができない場合は、javascriptベースの検証が良い戦略です。 ありがとうございますgrailsでパスワードルールを実装する
答えて
パスワードの制約でhttp://grails.org/doc/2.0.x/ref/Constraints/validator.htmlを使用してください。
彼が言及しているのはカスタム検証であり、これも1.3.7の一部であるため、Rayが何を提案しているのでしょうか。 (これは彼が2.0のドキュメントを参照しているところです)カスタムバリデーションのすべてのルールを書き留めるだけで、オブジェクトがデータベースに永続化される前に、それらすべてのルールに対して検証されるか、検証を呼び出すことができます保存する前に値を検証するためにいつでもオブジェクト上の()メソッドを呼び出すことができます。
質問の2番目の部分に来る:同じjavascriptのチェックが必要ですか?
回答ははいです。クライアント側の検証でユーザーエクスペリエンスが向上し、サーバー側の検証によってデータの整合性が維持されるため、クライアント側とサーバー側の両方の検証が適切に行われることは常に良いことです。クライアント側の検証でも整合性が保証されますが、これらは合格する可能性があるため、これらのものだけに頼るべきではありません。
これが役に立ちます。
私はこれを行う2つの方法を考えることができます。 @ ray-tayekは、パスワードがドメインクラスフィールドとして格納されていると想定していましたが、それはプライベートではありませんでした。パスワードはネットワーク(イントラネットまたはインターネット)上でプレーンテキストとして送信され、同じ方法でデータベースを更新します。あなたはHTTPSを使用している場合は、前者が真実ではないので、(代わりにカスタムバリデータを使用しての)あなたは、正規表現(未テスト)かかりmatches
の制約を使用することができます:とにかく
class User {
String username
String password
static constraints = {
username blank: false // whatever
password minLenght: 8, matches: /^[\d\p{L}]*$/ // Digits or any kind of letter
}
}
を、私は希望doは正しい場合にパスワードでクライアント側をJavaScriptで検証し、SHA-1などのハッシュを計算してサーバーに送信します。だから、
static constraints = {
// ...
passwordHash matches: /^\b[0-9a-f]{5,40}\b$/
}
、ユーザーはあなたがチェックすべきでログインしようとします。その場合は、すべてのあなたは、サーバー側でハッシュを簡単に行うことができSHA-1の文字列に適合していることである確認する必要があります単純なパスワードを使用する代わりに、ハッシュを格納し、送信します。
- 1. grailsアプリケーションでHDIVフレームワークを実装する
- 2. Grailsアプリケーションで「remember me」を実装する
- 3. grailsでスプリングキャッシュプラグインを実装する
- 4. オンザフライでパスワードルールを確認する
- 5. Grailsアプリケーションでサービス実装を選択する方法は?
- 6. 私のプロジェクトでGrailsのShiroセキュリティを実装する方法
- 7. Grailsで反応性テーブルを実装する方法は?
- 8. Grailsでパーミッションベースのアクセス制御を実装する方法は?
- 9. GrailsのUrlMappings私はGrailsのでRESTサービスを実装しています
- 10. Grailsサービスの実装からインタフェースを分離するには?
- 11. grailsでGoogleアカウントのログインを実装する方法に関するチュートリアル
- 12. パスワードルールの正規表現
- 13. booleanプロパティのチェックを含む検索クエリビルダーをGrails Searchable Pluginで実装する
- 14. grails run-appをプログラムで実行する
- 15. 既存のSOAP Webサービス(CXF)実装をGrailsアプリケーションに統合する方法は?
- 16. DelphiでXIRRの実装を実装するには?
- 17. JBoss Weld:テスト用に異なる実装を実装する
- 18. ProxyでデフォルトでIExtensibleDataObjectを実装する
- 19. iOSでバックグラウンドでサービスを実装する
- 20. Grailsがサーバーを実行
- 21. 実装するコントローラ
- 22. UWP、MySQL、実装されたListView、CRUD操作を実装する
- 23. インターフェイスを実装するメリット
- 24. IDropTargetを実装する
- 25. IConvertible.GetTypeCodeを実装する
- 26. AMRエンコーダを実装する
- 27. クイックソートを実装するヘルプ
- 28. jQuery scrollToを実装する
- 29. キャッシュを実装する
- 30. HashMapを実装する
ありがとうございますが、grails 1.3.7バージョンを使用していますが、まだgrails 2.0バージョンに移行されていません。 –
は1.3.7で動作するはずです –