43 |
43 |
|
44 |
44 |
from urllib import unquote
|
45 |
45 |
|
46 |
|
from snf_django.lib.astakos import get_user
|
|
46 |
import astakosclient
|
|
47 |
from snf_django.lib import astakos
|
|
48 |
|
47 |
49 |
from synnefo.db.models import VirtualMachine, NetworkInterface, Network
|
48 |
|
from astakosclient import AstakosClient
|
49 |
50 |
|
50 |
51 |
# server actions specific imports
|
51 |
52 |
from synnefo.api import servers
|
... | ... | |
109 |
110 |
raise Http404
|
110 |
111 |
|
111 |
112 |
token = get_token_from_cookie(request, AUTH_COOKIE_NAME)
|
112 |
|
get_user(request, settings.ASTAKOS_URL,
|
113 |
|
fallback_token=token, logger=logger)
|
|
113 |
astakos.get_user(request, settings.ASTAKOS_URL,
|
|
114 |
fallback_token=token, logger=logger)
|
114 |
115 |
if hasattr(request, 'user') and request.user:
|
115 |
116 |
groups = request.user.get('groups', [])
|
116 |
117 |
|
117 |
118 |
if not groups:
|
118 |
|
logger.error("Failed to access helpdesk view %r",
|
|
119 |
logger.error("Failed to access helpdesk view. User: %r",
|
119 |
120 |
request.user_uniq)
|
120 |
121 |
raise PermissionDenied
|
121 |
122 |
|
... | ... | |
131 |
132 |
raise PermissionDenied
|
132 |
133 |
else:
|
133 |
134 |
logger.error("Failed to access helpdesk view %r. No authenticated "
|
134 |
|
"user found.")
|
|
135 |
"user found.", request.user_uniq)
|
135 |
136 |
raise PermissionDenied
|
136 |
137 |
|
137 |
138 |
logging.info("User %s accessed helpdesk view (%s)", request.user_uniq,
|
... | ... | |
194 |
195 |
account = None
|
195 |
196 |
search_query = vmid
|
196 |
197 |
|
197 |
|
astakos = AstakosClient(settings.ASTAKOS_URL, retry=2,
|
198 |
|
use_pool=True, logger=logger)
|
|
198 |
astakos_client = astakosclient.AstakosClient(settings.ASTAKOS_URL, retry=2,
|
|
199 |
use_pool=True, logger=logger)
|
199 |
200 |
|
200 |
201 |
if is_uuid:
|
201 |
202 |
account = search_query
|
202 |
|
account_name = astakos.get_username(auth_token, account)
|
|
203 |
account_name = astakos_client.get_username(auth_token, account)
|
203 |
204 |
|
204 |
205 |
if account_exists and not is_uuid:
|
205 |
206 |
account_name = search_query
|
206 |
|
account = astakos.get_uuid(auth_token, account_name)
|
|
207 |
account = astakos_client.get_uuid(auth_token, account_name)
|
207 |
208 |
|
208 |
209 |
if not account:
|
209 |
210 |
account_exists = False
|