Module: Kiji::Authentication

Included in:
API
Defined in:
lib/kiji/authentication.rb

Instance Method Summary collapse

Instance Method Details

#append_certificate(user_id, new_cert) ⇒ Object



31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# File 'lib/kiji/authentication.rb', line 31

def append_certificate(user_id, new_cert)
  x509_cert = Base64.encode64(new_cert.to_der).gsub('\n', '')

  appl_data = Nokogiri::XML::Builder.new do |xml|
    xml.DataRoot do
      xml.ApplData(Id: 'ApplData') do
        xml.UserID user_id
        xml.AddX509Certificate x509_cert
      end
    end
  end

  connection.post('/shinsei/1/authentication/certificate/append') do |req|
    req.body = sign(appl_data).to_xml
  end
end

#delete_certificate(user_id, cert_to_delete) ⇒ Object



65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
# File 'lib/kiji/authentication.rb', line 65

def delete_certificate(user_id, cert_to_delete)
  x509_cert = Base64.encode64(cert_to_delete.to_der).gsub('\n', '')

  appl_data = Nokogiri::XML::Builder.new do |xml|
    xml.DataRoot do
      xml.ApplData(Id: 'ApplData') do
        xml.UserID user_id
        xml.DelX509Certificate x509_cert
      end
    end
  end

  connection.post('/shinsei/1/authentication/certificate/delete') do |req|
    req.body = sign(appl_data).to_xml
  end
end

#login(user_id) ⇒ Object



17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/kiji/authentication.rb', line 17

def (user_id)
  appl_data = Nokogiri::XML::Builder.new do |xml|
    xml.DataRoot do
      xml.ApplData(Id: 'ApplData') do
        xml.UserID user_id
      end
    end
  end

  connection.post('/shinsei/1/authentication/login') do |req|
    req.body = sign(appl_data).to_xml
  end
end

#register(user_id) ⇒ Object



3
4
5
6
7
8
9
10
11
12
13
14
15
# File 'lib/kiji/authentication.rb', line 3

def register(user_id)
  appl_data = Nokogiri::XML::Builder.new do |xml|
    xml.DataRoot do
      xml.ApplData(Id: 'ApplData') do
        xml.UserID user_id
      end
    end
  end

  connection.post('/shinsei/1/authentication/user') do |req|
    req.body = sign(appl_data).to_xml
  end
end

#update_certificate(user_id, old_cert) ⇒ Object



48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
# File 'lib/kiji/authentication.rb', line 48

def update_certificate(user_id, old_cert)
  x509_cert = Base64.encode64(old_cert.to_der).gsub('\n', '')

  appl_data = Nokogiri::XML::Builder.new do |xml|
    xml.DataRoot do
      xml.ApplData(Id: 'ApplData') do
        xml.UserID user_id
        xml.X509Certificate x509_cert
      end
    end
  end

  connection.post('/shinsei/1/authentication/certificate/update') do |req|
    req.body = sign(appl_data).to_xml
  end
end