2016-10-29 2 views
2

이전 question에서 MessageHub 관리 API와 상호 작용할 수있는 apiKey를 얻을 수 있습니다.서비스 자격 증명을 검색하는 Bluemix API

저는이 서비스를 Bluemix 응용 프로그램에 바인딩하지 않기 때문에 응용 프로그램에서 VCAP_SERVICES 환경 변수에 액세스 할 수 없습니다.

프로그래밍 방식으로 서비스 자격 증명을 검색하고 싶습니다. 나는 이것이 MessageHub 질문보다는 일반적인 Bluemix cf api 질문 일 것 같아요.

API 호출을 사용하여 서비스 자격 증명을 검색하려면 어떻게해야합니까?

+1

을 나는이 필요하다고 생각. 지금 테스트 중 ... –

+1

그래, 맞았 어 –

답변

0

https://apidocs.cloudfoundry.org/245/service_instances/list_all_service_keys_for_the_service_instance.html API가 유용했습니다.

cf-python-client 라이브러리 사용 : https://apidocs.cloudfoundry.org/245/service_instances/list_all_service_keys_for_the_service_instance.html :

from cloudfoundry_client.client import CloudFoundryClient 
target_endpoint = 'https://api.ng.bluemix.net' 

client = CloudFoundryClient(target_endpoint, skip_verification=False) 
client.init_with_user_credentials(
    ibm_id, 
    ibm_id_password 
    ) 

mh_service_instance = client.service_instances.get_first(name='my_service') 
if mh_service_instance: 
    mh_service_instance_id = mh_service_instance['metadata']['guid'] 
    print(mh_service_instance_id) 
    print(list(mh_service_instance.service_keys())) 
0

슬프게도 BlueMix runs a version of Cloud Foundry that is 6 months out of date이기 때문에 List Service Keys 엔드 포인트를 사용할 수 없습니다.

유일한 대안은 일부 앱 (어쩌면 실제 앱조차도)에 바인딩하여 자격 증명을 추출하는 것입니다.

서비스에 대한 자격 증명이 필요한 사람은 안티 패턴이지만 필요한 경우가 많이 있습니다.

+0

어쩌면 이것은 목록 서비스 키 API가 나를 위해 일하는 것처럼 바뀌었을 까? –

관련 문제