Class: Baidubce::Services::StsClient

Inherits:
BceBaseClient show all
Defined in:
lib/baidubce/services/sts/sts_client.rb

Constant Summary collapse

STS_URL_PREFIX =
"/"
GET_SESSION_TOKEN_VERSION =
"v1"
GET_SESSION_TOKEN_PATH =
"sessionToken"

Constants included from Http

Http::AUTHORIZATION, Http::BCE_ACL, Http::BCE_CONTENT_CRC32, Http::BCE_CONTENT_SHA256, Http::BCE_COPY_METADATA_DIRECTIVE, Http::BCE_COPY_SOURCE, Http::BCE_COPY_SOURCE_IF_MATCH, Http::BCE_COPY_SOURCE_IF_MODIFIED_SINCE, Http::BCE_COPY_SOURCE_IF_NONE_MATCH, Http::BCE_COPY_SOURCE_IF_UNMODIFIED_SINCE, Http::BCE_COPY_SOURCE_RANGE, Http::BCE_DATE, Http::BCE_PREFIX, Http::BCE_REQUEST_ID, Http::BCE_USER_METADATA_PREFIX, Http::BOS_DEBUG_ID, Http::BOS_STORAGE_CLASS, Http::CACHE_CONTROL, Http::CONTENT_DISPOSITION, Http::CONTENT_ENCODING, Http::CONTENT_LENGTH, Http::CONTENT_MD5, Http::CONTENT_RANGE, Http::CONTENT_TYPE, Http::DATE, Http::DELETE, Http::ETAG, Http::EXPIRES, Http::GET, Http::HEAD, Http::HOST, Http::JSON_TYPE, Http::LAST_MODIFIED, Http::OCTET_STREAM_TYPE, Http::POST, Http::PUT, Http::RANGE, Http::SERVER, Http::STS_SECURITY_TOKEN, Http::USER_AGENT

Instance Method Summary collapse

Methods inherited from BceBaseClient

#compute_endpoint, #initialize

Constructor Details

This class inherits a constructor from Baidubce::BceBaseClient

Instance Method Details

#get_session_token(acl, duration_seconds = nil) ⇒ Object



26
27
28
29
30
31
32
33
# File 'lib/baidubce/services/sts/sts_client.rb', line 26

def get_session_token(acl, duration_seconds=nil)
    params = duration_seconds.nil? ? {} : { durationSeconds: duration_seconds }
    headers = { CONTENT_TYPE => JSON_TYPE }
    body = acl.to_json
    path = Utils.append_uri(STS_URL_PREFIX, GET_SESSION_TOKEN_VERSION, GET_SESSION_TOKEN_PATH)
    body, headers = @http_client.send_request(@config, @signer, POST, path, params, headers, body)
    Utils.generate_response(headers, body, false)
end