내보내기(0) 인쇄
모두 확장

방법:서비스 버스 응용 프로그램에 대한 보안 및 인증 설정

업데이트 날짜: 2014년 6월

이 항목에서는 Microsoft Azure 서비스 버스를 사용하여 서비스 및 클라이언트 응용 프로그램을 인증하는 방법을 설명합니다. 설정 및 메시지 수준 보안에 대한 자세한 내용은 서비스 버스 연결 보안 및 인증 및 WCF(Windows Communication Foundation) 설명서의 Securing Services 항목을 참조하세요.

서비스를 개발 중인 경우 Service Bus로 인증하는 데 사용할 자격 증명 유형과 서비스에 연결하는 클라이언트를 인증해야 하는지를 먼저 결정해야 합니다.모든 서비스는 SAML, 공유 암호 또는 단순한 웹 토큰을 사용하여 Service Bus로 인증되어야 합니다.클라이언트의 경우와 마찬가지로 서비스에 다른 인증 형식을 사용할 수 있습니다.자세한 내용은 TechNet의 서비스 버스 응용 프로그램용 인증 선택.

클라이언트를 개발 중인 경우에는 연결 중인 서비스에 필요한 인증 자격 증명의 유형을 결정합니다.이 작업은 계약 메타데이터에서 정보를 검색하는 등의다양한 방법으로 수행할 수 있습니다.자세한 내용은 TechNet의 방법:서비스 버스에서 사용할 WCF 서비스 계약 디자인.

  1. 지정된 <transportClientEndpointBehavior> 요소와 관련 자격 증명도 포함하는 동작을 정의합니다.

    WebHttp 샘플에 포함되어 있는 다음 코드를 통해 공유 암호 자격 증명을 선언하고 구성하는 방법을 알 수 있습니다.

    <behaviors>
      <endpointBehaviors>
        <behavior name="sharedSecretClientCredentials">
          <transportClientEndpointBehavior credentialType="SharedSecret">
            <clientCredentials>
              <sharedSecret issuerName="ISSUER_NAME" issuerSecret="ISSUER_SECRET" />
            </clientCredentials>
          </transportClientEndpointBehavior>
        </behavior>
      </endpointBehaviors>
    </behaviors>
    

    이 절차에서 발급자 이름과 암호는 App.config 파일에 바로 포함됩니다.이러한 보안 정보를 포함하는 구성 파일에는 특정 형식의 보안을 구현하는 것이 좋습니다.

    App.config 파일에서 자격 증명을 정의하고 나면 응용 프로그램이 보안 구성을 자동으로 사용합니다.그 외 필요한 단계는 없습니다.

  1. 보안 자격 증명을 검색합니다.

    Console.Write("Your Issuer Name: ");
    string issuerName = Console.ReadLine();
    Console.Write("Your Issuer Secret: ");
    string issuerSecret = Console.ReadLine();
    

    Service Bus 샘플에서는 일반적인 것처럼 이 절차에는 사용자로 알려진 발급자 이름 및 암호가 포함되어 있고 바로 입력되어 있습니다.

  2. 보안 자격 증명이 포함되어 있는 자격 증명 끝점 동작 개체를 만듭니다.

    TransportClientEndpointBehavior sharedSecretServiceBusCredential = new TransportClientEndpointBehavior();
    sharedSecretServiceBusCredential.CredentialType = TransportClientCredentialType.SharedSecret;
    sharedSecretServiceBusCredential.Credentials.SharedSecret.IssuerName = issuerName;
    sharedSecretServiceBusCredential.Credentials.SharedSecret.IssuerSecret = issuerSecret;
    
  3. 끝점에 연결할 채널 팩터리를 만듭니다.

    ChannelFactory<IEchoChannel> channelFactory = new ChannelFactory<IEchoChannel>("RelayEndpoint", new EndpointAddress(serviceUri));
    
  4. 채널 팩터리에 자격 증명을 적용합니다.

    channelFactory.Endpoint.Behaviors.Add(sharedSecretServiceBusCredential);
    

    채널 팩터리에 자격 증명을 적용한 후에는 끝점에 대한 연결을 열어 Service Bus에 액세스할 수 있습니다.

표시:
© 2014 Microsoft