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.
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.
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:
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.)
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.
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.
Nomeie o pool de aplicativos. Neste exemplo, nós o chamamos de OLAP. (Veja a Figura 2.)
Figura 2
Criando um diretório virtual
Para criar um diretório virtual:
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.)
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.
Clique com o botão direito do mouse no site para abrir o menu de atalho e selecione Novoe, em seguida, Diretório virtual.
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.
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
Configurando as propriedades do diretório virtual
Para configurar as propriedades do diretório virtual:
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
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.
Escolha o pool de aplicativos que você acabou de criar.
Clique no botão Configuração e você verá a tela mostrada na Figura 5.
Figura 5
Clique no botão Adicionar.
Na opção Executável, digite o nome do caminho completo para msmdpump.dll. Neste exemplo, seria: C:\wwroot\olap\msmdpump.dll
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
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:
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
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:
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.
Nomeie a extensão.
Clique no botão Adicionar e forneça um caminho para seu arquivo msmdpump.dll.
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
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.