Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

329
Visualizações
¿Cómo conectarse al servidor Tabular Cube usando las credenciales proporcionadas en una cadena de conexión?

Microsoft dice:

https://docs.microsoft.com/en-us/analysis-services/instances/connection-string-properties-analysis-services?view=asallproducts-allversions

"Al conectarse a través de TCP a SSAS, la biblioteca del cliente se hará pasar por el usuario de Windows utilizando el nombre de usuario y la contraseña especificados y luego se conectará como de costumbre al servidor".

"Al conectarse a través de HTTP(S) a SSAS, las credenciales se proporcionan al servidor web en función del modo de autenticación configurado en el servidor web, por ejemplo, autenticación básica o autenticación de Windows. El servidor web realizará la suplantación de identidad de Windows adecuada antes de conectarse a el servidor SSAS, por lo que proporciona el flujo de credenciales correcto al servidor".

Sin embargo, cuando hago esto:

 using Tabular = Microsoft.AnalysisServices.Tabular; using (Tabular.Server server = new Tabular.Server()) { //connectionString = "Provider=MSOLAP;DataSource=ServerIP;UserID=xx;Password=xx;Persist Security Info=True;Impersonation Level=Impersonate;" server.Connect(connectionString); }

Utiliza las credenciales de mi cuenta de usuario que ejecuta el código, no el ID de usuario y la contraseña en ConnectionString.

¿Cómo puedo hacer que se conecte a través de "TCP"?

ACTUALIZACIÓN: usando la sugerencia de @GregGalloway y la lógica de aquí : he implementado una clase Impersonator. Con él he actualizado mi código para hacer lo siguiente:

 using (Tabular.Server server = new Tabular.Server()) { using (new Impersonator("UserName", "Domain", "Password")) { server.Connect(connectionString); } }

Desafortunadamente, cuando perfilo la llamada al servidor SSAS, puedo ver que todavía usa las mismas credenciales que antes y que la conexión con el servidor es exitosa, independientemente de que se pasen las credenciales al constructor. Al revisar el código, puedo ver que no se lanzan excepciones en ningún momento.

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Si su aplicación o aplicación web aún no se está ejecutando con esas credenciales, deberá suplantar esa identidad en su código antes de conectarse. Aquí hay un ejemplo .

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda