class Selenium::WebDriver::Credential
Attributes
id[R]
private_key[R]
resident_credential[R]
resident_credential?[R]
rp_id[R]
sign_count[R]
user_handle[R]
Public Class Methods
decode(base64)
click to toggle source
# File lib/selenium/webdriver/common/virtual_authenticator/credential.rb, line 41 def decode(base64) Base64.urlsafe_decode64(base64).unpack('C*') end
encode(byte_array)
click to toggle source
# File lib/selenium/webdriver/common/virtual_authenticator/credential.rb, line 37 def encode(byte_array) Base64.urlsafe_encode64(byte_array&.pack('C*')) end
from_json(opts)
click to toggle source
# File lib/selenium/webdriver/common/virtual_authenticator/credential.rb, line 45 def from_json(opts) user_handle = opts['userHandle'] ? decode(opts['userHandle']) : nil new(id: decode(opts["credentialId"]), resident_credential: opts["isResidentCredential"], rp_id: opts['rpId'], private_key: opts['privateKey'], sign_count: opts['signCount'], user_handle: user_handle) end
new(id:, resident_credential:, rp_id:, private_key:, user_handle: nil, sign_count: 0)
click to toggle source
# File lib/selenium/webdriver/common/virtual_authenticator/credential.rb, line 59 def initialize(id:, resident_credential:, rp_id:, private_key:, user_handle: nil, sign_count: 0) @id = id @resident_credential = resident_credential @rp_id = rp_id @user_handle = user_handle @private_key = private_key @sign_count = sign_count end
non_resident(**opts)
click to toggle source
# File lib/selenium/webdriver/common/virtual_authenticator/credential.rb, line 33 def non_resident(**opts) Credential.new(resident_credential: false, **opts) end
resident(**opts)
click to toggle source
# File lib/selenium/webdriver/common/virtual_authenticator/credential.rb, line 29 def resident(**opts) Credential.new(resident_credential: true, **opts) end
Public Instance Methods
as_json(*)
click to toggle source
@api private
# File lib/selenium/webdriver/common/virtual_authenticator/credential.rb, line 72 def as_json(*) credential_data = {'credentialId' => Credential.encode(id), 'isResidentCredential' => resident_credential?, 'rpId' => rp_id, 'privateKey' => Credential.encode(private_key), 'signCount' => sign_count} credential_data['userHandle'] = Credential.encode(user_handle) if user_handle credential_data end