Object
Generates access tokens using the JWT assertion profile. Requires a service account & access to the private key.
@example Using Signet
key = Google::APIClient::KeyUtils.load_from_pkcs12('client.p12', 'notasecret') client.authorization = Signet::OAuth2::Client.new( :token_credential_uri => 'https://accounts.google.com/o/oauth2/token', :audience => 'https://accounts.google.com/o/oauth2/token', :scope => 'https://www.googleapis.com/auth/prediction', :issuer => '123456-abcdef@developer.gserviceaccount.com', :signing_key => key) client.authorization.fetch_access_token! client.execute(...)
@deprecated
Service accounts are now supported directly in Signet
@see developers.google.com/accounts/docs/OAuth2ServiceAccount
Initializes the asserter for a service account.
@param [String] issuer
Name/ID of the client issuing the assertion
@param [String, Array] scope
Scopes to authorize. May be a space delimited string or array of strings
@param [String,OpenSSL::PKey] key
Key for signing assertions
@param [String] algorithm
Algorithm to use, either 'RS256' for RSA with SHA-256 or 'HS256' for HMAC with SHA-256
# File lib/google/api_client/auth/jwt_asserter.rb, line 66 def initialize(issuer, scope, key, algorithm = "RS256") self.issuer = issuer self.scope = scope self.expiry = 60 # 1 min default self.skew = 60 self.key = key self.algorithm = algorithm end
Set the scopes to authorize
@param [String, Array] new_scope
Scopes to authorize. May be a space delimited string or array of strings
# File lib/google/api_client/auth/jwt_asserter.rb, line 80 def scope=(new_scope) case new_scope when Array @scope = new_scope.join(' ') when String @scope = new_scope when nil @scope = '' else raise TypeError, "Expected Array or String, got #{new_scope.class}" end end
Generated with the Darkfish Rdoc Generator 2.