1 # -*- coding: utf-8 -*-
2 # Copyright 2015 Google Inc. All Rights Reserved.
4 # Licensed under the Apache License, Version 2.0 (the "License");
5 # you may not use this file except in compliance with the License.
6 # You may obtain a copy of the License at
8 # http://www.apache.org/licenses/LICENSE-2.0
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 # See the License for the specific language governing permissions and
14 # limitations under the License.
15 """Developer Shell auth bridge.
17 This enables Boto API auth in Developer Shell environment.
20 from __future__
import absolute_import
22 import oauth2client
.devshell
as devshell
23 from boto
.auth_handler
import AuthHandler
24 from boto
.auth_handler
import NotReadyToAuthenticate
27 class DevshellAuth(AuthHandler
):
28 """Developer Shell authorization plugin class."""
32 def __init__(self
, path
, config
, provider
):
34 self
.creds
= devshell
.DevshellCredentials()
36 raise NotReadyToAuthenticate()
38 def add_auth(self
, http_request
):
39 http_request
.headers
['Authorization'] = 'Bearer %s' % self
.creds
.access_token