Muistiinpano
Tälle sivulle pääsy edellyttää valtuutusta. Voit yrittää kirjautua sisään tai vaihtaa hakemistoja.
Tälle sivulle pääsy edellyttää valtuutusta. Voit yrittää vaihtaa hakemistoja.
KOSKEE: Sovellus omistaa tiedot
Käyttäjä omistaa tiedot
Jos haluat määrittää Power BI:hin tunnistetiedot ohjelmallisesti, noudata tämän artikkelin ohjeita. Tunnistetietojen ohjelmamäärittämisen avulla voit myös salata tunnistetiedot.
Muistiinpano
Tietolähteiden tunnistetietojen saamisen päivittäminen
Tutustu semanttisen mallin tietolähteisiin kutsumalla Nouda tietolähteet. Kunkin tietolähteen vastauksen leipäteksti sisältää tyypin, yhteyden tiedot, yhdyskäytävän ja tietolähteen tunnuksen.
// Select a datasource var datasources = pbiClient.Datasets.GetDatasources(datasetId).Value; var datasource = datasources.First();Luo tunnistemerkkijono Tietolähde-esimerkkien päivittäminen - asetuksen mukaisesti. Tunnistemerkkijonon sisältö määräytyy tunnistetietojen tyypin mukaan.
var credentials = new BasicCredentials(username: "username", password :"*****");Muistiinpano
Jos käytät pilvipalvelutietolähteitä, älä seuraa tämän osion seuraavia vaiheita. Lisää tunnistetiedot järjestelmään käyttämällä vaiheessa 1 saamaasi yhdyskäytävän tunnusta ja tietolähteen tunnusta käyttämällä kutsua Päivitä tietolähde .
Nouda yhdyskäytävän julkinen avain kutsumalla Nouda yhdyskäytävä.
var gateway = pbiClient.Gateways.GetGatewayById(datasource.GatewayId);Salaa tunnistetiedot.
var credentialsEncryptor = new AsymmetricKeyEncryptor(gateway.publicKey);Luo salatuilla tunnistetiedoilla tarvitsemasi tunnistetiedot.
Käytä AsymetricKeyEncryptor-luokkaa vaiheessa 3 noudetun julkisen avaimen kanssa.
var credentialDetails = new CredentialDetails( credentials, PrivacyLevel.Private, EncryptedConnection.Encrypted, credentialsEncryptor);Määritä tunnistetiedot kutsumalla Päivitä tietolähde.
pbiClient.Gateways.UpdateDatasource(datasource.GatewayId.Value, datasource.DatasourceId.Value, new UpdateDatasourceRequest(credentialDetails));
Uuden tietolähteen määrittäminen tietoyhdyskäytävälle
Nouda yhdyskäytävän tunnus ja julkinen avain kutsumalla Nouda yhdyskäytävät.
// Select a gateway var gateways = pbiClient.Gateways.GetGateways().Value; var gateway = gateways.First();Luo tunnistetiedot noudattamalla ohjeita, jotka on kuvattu osiossa Tietolähteiden tunnistetietojen päivittäminen käyttämällä vaiheessa 2 noutamaansa yhdyskäytävän julkista avainta.
Luo pyynnön runko.
var request = new PublishDatasourceToGatewayRequest( dataSourceType: "SQL", connectionDetails: "{\"server\":\"myServer\",\"database\":\"myDatabase\"}", credentialDetails: credentialDetails, dataSourceName: "my sql datasource");Kutsu Luo tietolähde -ohjelmointirajapintaa.
pbiClient.Gateways.CreateDatasource(gateway.Id, request);
Tunnistetietotyypit
Kun kutsut tietolähteen luomista tai tietolähteen päivittämistä yrityksen paikallisen yhdyskäytävän Power BI REST -ohjelmointirajapinnasta, salaa tunnistetietoarvo käyttämällä yhdyskäytävän julkista avainta.
Muistiinpano
.NET SDK v3 voi myös suorittaa seuraavat .NET SDK v2 -esimerkit.
Windows ja perustunnistetiedot
// Windows credentials
var credentials = new WindowsCredentials(username: "john", password: "*****");
// Or
// Basic credentials
var credentials = new BasicCredentials(username: "john", password: "*****");
var credentialsEncryptor = new AsymmetricKeyEncryptor(publicKey);
var credentialDetails = new CredentialDetails(credentials, PrivacyLevel.Private, EncryptedConnection.Encrypted, credentialsEncryptor);
Avaintunnistetiedot
var credentials = new KeyCredentials("TestKey");
var credentialsEncryptor = new AsymmetricKeyEncryptor(publicKey);
var credentialDetails = new CredentialDetails(credentials, PrivacyLevel.Private, EncryptedConnection.Encrypted, credentialsEncryptor);
OAuth2-tunnistetiedot
var credentials = new OAuth2Credentials("TestToken");
var credentialsEncryptor = new AsymmetricKeyEncryptor(publicKey);
var credentialDetails = new CredentialDetails(credentials, PrivacyLevel.Private, EncryptedConnection.Encrypted, credentialsEncryptor);
Anonyymit tunnistetiedot
var credentials = new AnonymousCredentials();
var credentialDetails = new CredentialDetails(credentials, PrivacyLevel.Private, EncryptedConnection.NotEncrypted);
Vianmääritys
Yhdyskäytävää ja tietolähteen tunnusta ei löydy Nouda tietolähteet -kutsua käytettäessä
Tämä ongelma tarkoittaa, että semanttinen malli ei ole sidottu yhdyskäytävään. Kun luot uuden semanttisen mallin, käyttäjän pilviyhdyskäytävään luodaan automaattisesti tietolähde, jolla ei ole tunnistetietoja kunkin pilviyhteyden osalta. Pilviyhdyskäytävää käytetään pilviyhteyksien tunnistetietojen tallentamiseen.
Kun olet luonut semanttisen mallin, semanttisen mallin ja sopivan yhdyskäytävän välille luodaan automaattinen sidonta, joka sisältää vastaavat tietolähteet kaikille yhteyksille. Automaattinen sidonta epäonnistuu, jos sopivaa yhdyskäytävää tai yhdyskäytäviä ei ole.
Jos käytät paikallisia semanttisia malleja, luo puuttuvat paikalliset tietolähteet ja sido semanttinen malli yhdyskäytävään manuaalisesti käyttämällä Sido yhdyskäytävään -toimintoa.
Voit etsiä sitovia yhdyskäytäviä Etsi yhdyskäytävät -parametrin avulla.