2016-12-17 1 views
0

client_id, client_secret (Azure를 호출하기 위해 필요한 모든 기본 자격 증명)의 유효성을 검사하고 싶습니다. 나는 그것을하는 한 가지 방법은 주어진 client_id, client_secret 등으로 토큰을 생성하는 것입니다.
올바른 방법일까요? 그렇다면 무엇이 더 필요합니까? 내 컴퓨터에 인증서를 업로드해야합니까? 그렇지 않다면 어떻게해야합니까?내 컴퓨터의 인증서를 생성하지 않고 Azure 자격 증명의 유효성을 검사 할 수 있습니까?

def get_token(self, client_id, client_secret, endpoint_url, resource_url=None): 
    if not resource_url: 
     resource_url = 'https://management.core.windows.net/' 
    payload = { 
     'grant_type': 'client_credentials', 
     'client_id': client_id, 
     'client_secret': client_secret, 
     'resource': resource_url, 
    } 
    try: 
     response = requests.post(endpoint_url, data=payload).json() 
     token = response.get('access_token') 
     if token: 
      return token 
    except Exception as e: 
     LOG.exception(e.message) 
+0

실제 시나리오를 이해하는 데 귀하의 질문이 명확하지 않습니다. 그러나 내 경험에 비추어 볼 때 액세스 토큰을 얻기위한 요청을 만드는 방법에 대해서는 [document] (https://docs.microsoft.com/en-us/rest/api/#create-the-request)라고 생각합니다. Azure AD에서 당신에게 도움이됩니다. 설명을 향상시킬 수 있다면 더 유용한 세부 정보를 보내 줄 수 있다고 생각합니다. –

+0

저는 이것을 솔루션으로 제안하지 않고 MS에서 ADAL (https://github.com/AzureAD/azure-activedirectory-library-for-python)에 대해 알고 싶습니다. 존재하지만 어떤 이유로 든 사용하고 싶지 않다는 것을 알고 있다면 괜찮습니다. –

+0

@ PeterPan-MSFT 내 질문을 편집했습니다. – user3837980

답변

0

시나리오없이 질문에 대한 정답은 정확하지 않습니다. 일반적으로 관리 인증을 사용하는 AAD &을 사용하고 Azure Resource Management (ARM) & 서비스 관리 (ASM)와 관련된 두 가지 방법으로 Azure에서 인증 할 수 있습니다. 당신이 푸른에 서비스를 만들려면

는 예를 들어, 서버 & A에 대한 .cer 파일로 필요한 관리 인증서를 통해 ASM과도 client_id & client_secret, 또는 필요 토큰을 통해 ARM과 인증을 수행 할 수 있습니다. 클라이언트 용 pem 파일.

참고 자료로 다음 문서를 참조하여 파이썬에서 사용할 수 있습니다. ARM의 경우

  1. , ASM에 대한 https://azure-sdk-for-python.readthedocs.io/en/v2.0.0rc4/resourcemanagement.html
  2. 한편, https://azure-sdk-for-python.readthedocs.io/en/v2.0.0rc4/servicemanagement.html

, 당신은 검색 엔진 또는 MS Azure Search, 또는에 검색을 통해 자세한 내용은 핵심 단어 (같은 Azure Resource Management Authentication, ASM authenticate 등)를 알 수 있습니다 @LaurentMazuel은 GitHub에서 Python을위한 ADAL 프로젝트를 통해 말했다.

희망이 있습니다. VM 또는 기타 제작과 같은 특정 시나리오에 대한 추가 도움말이 필요하면 언제든지 알려 주시고 세부 사항을 개선하십시오.

관련 문제