blacklisted_password 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- MGEyOTVhM2EwZWRjMjMwNjUxYzBkM2RjZTg4MWMxZjhjOTQ1ZTU3YQ==
4
+ ZTVhZTFhY2Q2ZTZjYTE4MmNjMTA5Y2Y2MDJkNTc0OWNmYjljMzEyMw==
5
5
  data.tar.gz: !binary |-
6
- NjMwNTc4NWY2ODE1YTE1NmI0MDYwNzNmNDE4OGVjMjZmOTk3MzU2OQ==
6
+ OTIyODBhYWQxNTUxZTQ5MTc3YWM3MmIxMTczODE4YzQxYzY4ZTU1Zg==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- MTUwNWRmMGRlNWI0YzA3ZDE1NzBhYjNjNTUzNGQ1ZTZjN2Y1MjJhNzM0Y2Ex
10
- NzA2ZjM1NTUxN2FmODMxZGM0MzUzNDE2NTYwNWI0ZTM4YmIwNzYyYjA0ZWE3
11
- OGM2ZTNjZmNkMzA0NTJkZjE3ZjE4ZGJkMTlhMmMwNjNiMTJkMjM=
9
+ ZmMxOWYzMTBmZTcxOGZiODVmNzQ3MGZhNWUwZjYyM2I0ZTk4MWJkODExNjZi
10
+ ZWUzNGYxOWFkOTY0OTVjMWE3MzgzNGViODBjMGJmNDg5NGRhYjU2OTA5ZWE5
11
+ ZDFiY2ZiMjE5MzY3NDU0NzA4ZDFjODk0YzIwOWZmZTJjZTc2ZDM=
12
12
  data.tar.gz: !binary |-
13
- MmI3Y2Q5MTc0NGQzYjEwZTE4MjQ0NGU1ZWIxNjgzZWYxMjY3NzcyOGY0ZWMy
14
- ZGQ4NmZiODA3ZmM4ZDFjODVmZTNlNGI0YTMwOGEzYjE3NWJmYjUzYjc0YmFl
15
- NTVmNDc3Mjc3YjE5ZDQ1MWJjNWFkZjlkMTFlMmYzZWY4MTRiMzQ=
13
+ YjYxZTZhNTdhZmNlMTI3YjhiMjA4Y2M4MDJkMzhkMmIzMDk3OGU4NjUwYjg2
14
+ Y2EwN2IyNGFkNmQ5ZDI3M2QxNDkzMjYxYWM0ZTFkNmZjMzkzZjUyM2Y4N2U2
15
+ ZjQwMDUxNTFlMWFjNTViNGVmNTI5OTA4NWVmOWNmNzFmMTJlZGI=
@@ -0,0 +1,4 @@
1
+ ---
2
+ abc123
3
+ black
4
+ list
@@ -1,5 +1,35 @@
1
1
  require "blacklisted_password/version"
2
2
 
3
3
  module BlacklistedPassword
4
- # Your code goes here...
4
+ BLACKLISTED_PASSWORD = Rails.root.join("config/blacklist_password.yml")
5
+ def blacklist_password #This is for blacklisting password
6
+ if password.present?
7
+ array = YAML.load_file(BLACKLISTED_PASSWORD).split(' ')
8
+ email_element = email_spliting(email)
9
+ array << email_element
10
+ array.flatten!
11
+ password_in_downcase = password.downcase
12
+ @value = false
13
+ array.each do |element|
14
+ reg_string = "#{element}"
15
+ reg = Regexp.new(reg_string)
16
+ result = reg.match( password_in_downcase)
17
+ if result
18
+ @value ||= true
19
+ break
20
+ else
21
+ @value ||= false
22
+ end
23
+ end
24
+ errors.add :password, "is black listed." if @value
25
+ end
26
+ end
27
+
28
+ def email_spliting(email) #This is for possible email splitting
29
+ character_to_split = ['_','+','@','.']
30
+ character_to_split.each do |char|
31
+ email = email.split(char).join("^")
32
+ end
33
+ email.split('^')
34
+ end
5
35
  end
@@ -1,3 +1,3 @@
1
1
  module BlacklistedPassword
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: blacklisted_password
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tanmay Bagchi
@@ -51,6 +51,7 @@ files:
51
51
  - README.md
52
52
  - Rakefile
53
53
  - blacklisted_password.gemspec
54
+ - config/blacklist_password.yml
54
55
  - lib/blacklisted_password.rb
55
56
  - lib/blacklisted_password/version.rb
56
57
  homepage: ''