Configurando o acesso HTTP ao Analysis Services do SQL Server 2005 no Microsoft Windows Server 2003

Publicado em: 23 de agosto de 2005

Por Edward Melomed

Resumo:  este artigo se destina aos interessados no fornecimento de acesso ao Analysis Services do SQL Server 2005 através do protocolo HTTP. Ele explica as etapas necessárias para configurar o acesso HTTP e discute várias configurações de segurança e desempenho. Todas as instruções contidas neste artigo são específicas do sistema operacional Microsoft Windows® Server™ 2003.

3squares

Nesta página

Visão geral
Obtendo binários
Criando um pool de aplicativos
Criando um diretório virtual
Configurando as propriedades do diretório virtual
Selecionando as configurações de segurança
Configurando a Extensão de Serviço da Web
Selecionando o servidor de destino do Analysis Services
Organizando tudo

Visão geral

O Analysis Services do Microsoft® SQL Server™ 2005 usa a mesma arquitetura usada pelo Analysis Services do SQL Server 2000 para oferecer acesso HTTP.

O componente de bombeamento é carregado no IIS (Serviços de Informações da Internet) e serve como uma extensão ISAPI, bombeando os dados do cliente para um servidor do Analysis Services e vice-versa.

Este documento o orientará pelo processo de configuração do acesso HTTP ao Analysis Services usando o Microsoft Windows Server™ 2003 SP1.

A Figura 1 fornece uma visão geral de alto nível da arquitetura do componente.

A Figura 1 fornece uma visão geral de alto nível da arquitetura do componente.

Obtendo binários

Para obter binários:

Copie o conteúdo do diretório %Pasta de instalação%\OLAP\bin\isapi na pasta que você gostaria que se tornasse a base do diretório virtual no IIS.

Neste exemplo, vamos copiar todos os arquivos da pasta C:\Arquivos de Programas\Microsoft SQL Server\MSSQL.1\OLAP\bin\isapi no diretório C:\inetpub\wwwroot\olap.

Observações:  para aproveitar todo o conjunto de configurações de segurança, é importante verificar se a pasta que se tornará a base do diretório virtual está localizada na unidade formatada para o sistema de arquivos NTFS.

Devido às limitações do IIS, o caminho do seu diretório não pode conter espaços.

Se você estiver planejando executar o bombeamento HTTP em um servidor que não seja o servidor do Analysis Services, certifique-se de instalar também o pacote redistribuível OLEDB for Analysis.

Criando um pool de aplicativos

Para criar um pool de aplicativos:

  1. Para abrir o console de Gerenciamento do Computador, abra o Painel de Controle, Ferramentas Administrativas, Gerenciamento do Computador.

    (Ou clique com o botão direito do mouse no ícone Meu Computador e selecione Gerenciar no menu de atalho.)

  2. No console de Gerenciamento do Computador, expanda o nó Serviços e Aplicativos e, em seguida, o nó Serviços de Informações da Internet.

    Se não conseguir localizar o nó Serviços de Informações da Internet, provavelmente o IIS não está instalado em sua máquina. Para instalá-lo, abra Adicionar ou Remover Programas no Painel de Controle. Selecione Adicionar ou Remover Componentes do Windows. Em seguida, adicione o IIS ao Windows.

  3. Clique com o botão direito do mouse em Pools de aplicativos para abrir o menu de atalho e selecione Novo e Pool de Aplicativos.

  4. Nomeie o pool de aplicativos. Neste exemplo, nós o chamamos de OLAP. (Veja a Figura 2.)

    Figura 2

    Figura 2

Criando um diretório virtual

Para criar um diretório virtual:

  1. Para abrir o console de Gerenciamento do Computador, abra o Painel de Controle, Ferramentas Administrativas, Gerenciamento do Computador.

    (Ou clique com o botão direito do mouse no ícone Meu Computador e selecione Gerenciar no menu de atalho.)

  2. No console de Gerenciamento do Computador, expanda o nó Serviços e Aplicativos e, em seguida, o nó Serviços de Informações da Internet.

    Se não conseguir localizar o nó Serviços de Informações da Internet, provavelmente o IIS não está instalado em sua máquina. Para instalá-lo, abra Adicionar ou Remover Programas no Painel de Controle. Selecione Adicionar ou Remover Componentes do Windows. Em seguida, adicione o IIS ao Windows.

  3. Clique com o botão direito do mouse no site para abrir o menu de atalho e selecione Novoe, em seguida, Diretório virtual.

  4. Nomeie o diretório virtual. Neste exemplo, nós o chamamos de OLAP.

    O diretório de conteúdo deve apontar para a pasta que você acabou de criar. No nosso exemplo, C:\inetpub\wwroot\olap.

  5. Verifique se, sob Permissões de Acesso, apenas a segunda caixa de seleção, Executar Scripts (ASP, por exemplo), está selecionada. (Veja a Figura 3.)

    Figura 3

    Figura 3

Configurando as propriedades do diretório virtual

Para configurar as propriedades do diretório virtual:

  1. Clique com o botão direito do mouse no nó do seu diretório virtual e selecione Propriedades no menu.

    Você deverá ver a tela mostrada na Figura 4.

    Figura 4

    Figura 4

    As propriedades que precisam ser alteradas estão circuladas em vermelho.

    As propriedades que não precisam ser alteradas, mas que têm um papel importante na segurança e no desempenho do diretório virtual, estão circuladas em verde.

  2. Escolha o pool de aplicativos que você acabou de criar.

  3. Clique no botão Configuração e você verá a tela mostrada na Figura 5.

    Figura 5

    Figura 5

  4. Clique no botão Adicionar.

  5. Na opção Executável, digite o nome do caminho completo para msmdpump.dll. Neste exemplo, seria: C:\wwroot\olap\msmdpump.dll

  6. Digite .dll na caixa de texto Extensão.

    Sua tela deverá se parecer com a caixa de diálogo mostrada na Figura 6.

    Figura 6

    Figura 6

  7. Clique no botão OK para aceitar as configurações.

Selecionando as configurações de segurança

Para selecionar as configurações de segurança:

  1. Selecione a guia Segurança de diretório e clique para Editar em Autenticação e controle de acesso. Você verá uma caixa de diálogo semelhante à da Figura 7.

    Figura 7

    Figura 7

  2. São apresentadas três opções. Escolha uma delas.

    Esta seção descreve resumidamente três opções, citando as vantagens, as desvantagens e as preocupações de segurança de cada uma.

Acesso anônimo

Quando esse modo está selecionado, o bombeamento (msmdpump.dll) é executado com credenciais; no nosso caso, as credenciais do usuário IUSR_MACHINENAME. Portanto, todas as conexões com o Analysis Services são abertas com o usuário IUSR_MACHINENAME. Quando esse modo está selecionado, não há distinção entre o usuário que está se conectando ao IIS e o que está se conectando ao Analysis Services. Não há uma maneira para distinguir os usuários.

Esse modo deve ser usado quando a infra-estrutura de segurança não aproveita a funcionalidade de segurança do Analysis Services. Provavelmente, esse é um ambiente extremamente controlado, no qual os usuários têm o acesso ao diretório virtual concedido ou negado.

Autenticação integrada do Windows

Esse é o modo mais seguro e recomendado.

Ele exige que o Servidor IIS possa acessar as credenciais de domínio do usuário. Isso pode ser feito usando o Microsoft Active Directory® ou outro mecanismo. A discussão de todas as configurações possíveis está além do escopo deste artigo.

Autenticação Digest para servidores de domínio do Windows

Este artigo não aborda essa opção. Você pode usar a Ajuda do IIS para ler mais sobre isso.

Autenticação básica

Esse modo exige que o usuário digite um nome de usuário e uma senha. O nome de usuário e a senha são transmitidos pela conexão HTTP para o IIS. O IIS tentará representar o usuário com as credenciais fornecidas.

Observe que, sempre que se está criando um sistema em que a senha é transmitida, é absolutamente necessário ter maneiras de proteger o canal de comunicação. O IIS fornece um ótimo conjunto de ferramentas para configurar e exigir que todas as comunicações sejam criptografadas usando o protocolo HTTPS.

As etapas necessárias para configurar o HTTPS para um diretório virtual serão descritas posteriormente neste artigo.

Configurando a Extensão de Serviço da Web

Para configurar a Extensão de Serviço da Web:

  1. No Gerenciamento do Computador, clique com o botão direito do mouse no nó Extensões de Serviços da Web e selecione Adicionar uma nova Extensão de Serviço da Web.

  2. Nomeie a extensão.

  3. Clique no botão Adicionar e forneça um caminho para seu arquivo msmdpump.dll.

  4. Marque a caixa de seleção Definir status da extensão como Permitido.

    Sua tela deverá se parecer com a caixa de diálogo mostrada na Figura 8.

    Figura 8

    Figura 8

Selecionando o servidor de destino do Analysis Services

Como você pode ver no diagrama arquitetônico da Figura 1, cada componente de bombeamento usa seu próprio arquivo de configuração.

Abra o arquivo msmdpump.ini localizado na sua pasta e examine seu conteúdo. Ele deverá ter a seguinte aparência:

<ConfigurationSettings>
<ServerName>localhost</ServerName>
<SessionTimeout>3600</SessionTimeout>
<ConnectionPoolSize>100</ConnectionPoolSize>
<MinThreadPoolSize>0</MinThreadPoolSize>
<MaxThreadPoolSize>0</MaxThreadPoolSize>
<MaxThreadsPerClient>4</MaxThreadsPerClient>
</ConfigurationSettings>

A única configuração que o interessa no momento é <ServerName>.

Se a instância do Analysis Services da qual você precisa para fornecer acesso estiver localizada na máquina local e instalada como uma instância padrão, não haverá motivos para alterar essa configuração. Caso contrário, será necessário especificar o nome da máquina e o nome da instância (minhamaquina\inst1).

Também é possível especificar um ponteiro para o diretório virtual em outro servidor IIS que esteja configurado para o acesso HTTP ao Analysis Services.

Por exemplo, você poderia ter <ServerName>http://segundamaquina/olap/msmdpump.dll</ServerName>

Organizando tudo

Neste momento, você já deve ter configurado o bombeamento HTTP e deve estar pronto para se conectar a partir de seu aplicativo.

Se o aplicativo fornecer uma maneira de especificar o nome do servidor, você precisará substituir o nome do servidor pelo caminho para o seu diretório virtual, concatenado com “msmdpump.dll”.

Como no Analysis Services do SQL Server 2000, o provedor OLEDB do MSOLAP entenderá que o nome do servidor inclui um caminho de URL e será iniciado automaticamente usando o protocolo HTTP.

Por exemplo, para conectar-se a “MinhaMaquina” a partir do aplicativo de exemplo MDX, você precisa conectar-se ao servidor do Analysis Services usando “http://MinhaMaquina/olap/msmdpump.dll” como nome do servidor.