mnubo / kubernetes-py

A python module for Kubernetes.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

HTTP 401 : Unauthorized at any request while using the conf file

tikolsky opened this issue · comments

commented

I am taking the k8s master conf file from /etc/kubernetes/admin.conf and using it as follows:

cfg_other = K8sConfig(kubeconfig='/Path/on/my/laptop')
pod = K8sPod(config=cfg_other, name='postgresql')
pod.list()

Exception:

---------------------------------------------------------------------------
UnauthorizedException                     Traceback (most recent call last)
<ipython-input-32-97bec4cd2ba1> in <module>()
----> 1 pod.list()

/workspace/ubiq/kubernetes-py/kubernetes/K8sPod.pyc in list(self, pattern)
     48
     49     def list(self, pattern=None):
---> 50         ls = super(K8sPod, self).list()
     51         pods = list(map(lambda pod: Pod(pod), ls))
     52         if pattern is not None:

/workspace/ubiq/kubernetes-py/kubernetes/K8sObject.pyc in list(self)
    257     def list(self):
    258         import pdb;pdb.set_trace()
--> 259         state = self.request(method='GET')
    260         if not state.get('status'):
    261             raise Exception('K8sObject: Could not fetch list of objects of type: [ {0} ]'.format(self.obj_type))

UnauthorizedException: K8sObject: LIST failed : HTTP 401 : Unauthorized

This is what the conf file looks like:

apiVersion: v1
clusters:
- cluster:
    certificate-authority-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUN5RENDQWJDZ0F3SUJBZ0lCQURBTkJna3Foa2lHOXcwQkFRc0ZBREFWTVJNd0VRWURWUVFERXdwcmRXSmwKY201bGRHVnpNQjRYRFRFM01EZ3dPVEE1TURZME0xb1hEVEkzTURnd056QTVNRFkwTTFvd0ZURVRNQkVHQTFVRQpBeE1LYTNWaVpYSnVaWFJsY3pDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQ2dnRUJBTEk0Ck1ndW5OK29KZTFQdmVlVE04MlFjY29BSERzdXI1bERmQUw3cWxhbGl1b2pNcWhFSjJDZWlwMjM0bEV2S09CaGMKbjJrditBcFVIQ2xKVGhFU3ZkUW41VmxtNTJnVE53aTcxKzRObkhZRit6enFXU3ptcEhLTHFIdkgrdGlRWG8yaApWV3N3TTBLeG5iUFZnbmhtN2tKNThrZUNoWmFaMXVMY0xYbVVacWYwVHRsMGVQbVZDVG5uamlJMXM3ZWRGZmRzCmJNWTVWL1JUdmJOMVh0VUZxWWpPZXArd3ZQeUdML2JBSlBrOWZvcFVMUzM3U0JuZ3lzR1RieSt1U0c1TmV2NjIKZnJOc2gzeEJTL1ZVQ011YlQ5WitDRGk2cUxUTVlFeXFVNjJUTTh4SGYxNVhSUDY1VTlQcDE3TFNpSkJxeVNiaQpxTDVmNzVjWVJKS0hUdUlHWVpVQ0F3RUFBYU1qTUNFd0RnWURWUjBQQVFIL0JBUURBZ0trTUE4R0ExVWRFd0VCCi93UUZNQU1CQWY4d0RRWUpLb1pJaHZjTkFRRUxCUUFEZ2dFQkFESmtUczhzNUxnL3lyTlp4SFhUamYxYzBnWTkKSEZmdk1lcE1JQ2ZMZnlpckZYN28rTWhxTERpOUxjS0lFMFh2ZDNldGFoUWNENGNlY0hRWVRhYUwrOXAzc3BLRApLL3ExeG9VaHJDbzQzTVBWVTg4QmVCSjJZOTlEVlkzdTgweHhPNndZRGZIbXFFVk16bzNwSDhwVm9ycnRwMlU0CnVxWFFiU09tc1NQRk85V0IvTFY4QWRNMUw5K2Zqeng1UFF5eFVZWlM5ODVjUy9NRElrK3hCQTRrMmw2U2EyWVcKZHJ5UEN4alkxY1UwN21wR3FqcVptWkZMTlEyMWpqN2pBZSthZHIwbUZ3amp4Q1RIcUxjY0lPQVVaRk51bTdHcApWeWNGTDRXMXI3M1kwaVBlcFB5eC9ZMmNOTW5FVVVkNy96NHNDYU8vN3d6aW5lMEhONnZwclRzNUorbz0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=
    server: https://****:6443
  name: kubernetes
contexts:
- context:
    cluster: kubernetes
    user: admin
  name: admin@kubernetes
- context:
    cluster: kubernetes
    user: kubelet
  name: kubelet@kubernetes
current-context: admin@kubernetes
kind: Config
preferences: {}
users:
- name: admin
  user:
    client-certificate-data: *****
    client-key-data: *****
- name: kubelet
  user:
    client-certificate-data: *****
@

(I replaced IP and certs with ****)

I'm getting 403 forbidden doing the same trying to list a service

Is this still an issue?