Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Korzystanie z encji Dokumenty programu SharePoint w organizacji usługi Dynamics 365 poza siatką dokumentów w aplikacji Dynamics 365 Customer Engagement (on-premises) wymaga aplikacji platformy Azure w celu udzielenia dostępu. Przykładem użycia tego dostępu są wywołania interfejsu API Dynamics 365 Customer Engagement. Konfiguracja wykorzystuje Power Platform Managed Identities z Azure do przyznawania dostępu.
Ważne
Od marca 2025 r. bieżący dostęp zostanie usunięty w celu zwiększenia ochrony systemu. Aby zapewnić ciągły dostęp, wykonaj następujące kroki, aby utworzyć aplikację platformy Azure z niezbędnymi uprawnieniami programu SharePoint, skonfigurować tożsamości zarządzane w organizacji Dynamics 365 Customer Engagement (on-premises) i skonfigurować poświadczenia federacyjne.
Utwórz aplikację Azure z uprawnieniami SharePoint
Utwórz rejestrację aplikacji z uprawnieniami interfejsu API do programu SharePoint. Więcej informacji na temat rejestrowania aplikacji i dostępu do SharePoint można znaleźć w Aplikacja Rejestr szybkiego startu platformy Azure oraz Dostęp do SharePoint za pośrednictwem Azure AD App-Only.
Otwórz portal Azure.
W obszarze Usługi Azure wybierz pozycję Rejestracje aplikacji.
Wybierz opcję Nowa rejestracja.
Wprowadź nazwę aplikacji.
Pod Obsługiwane typy kont wybierz Konta tylko w tym katalogu organizacyjnym.
Uwaga / Notatka
Inne typy kont nie są obecnie obsługiwane.
Wybierz pozycję Zarejestruj, aby utworzyć rejestrację Aplikacji.
Zanotuj identyfikator aplikacji (klienta) i identyfikator katalogu (dzierżawcy).
- W liście nawigacyjnej wybierz Przegląd.
- W sekcji Podstawy skopiuj wartości Identyfikator aplikacji (klienta) iIdentyfikator katalogu (dzierżawy) do wykorzystania w następnej sekcji.
Z listy nawigacyjnej wybierz Zarządzaj>Uprawnienia API.
W sekcji Skonfigurowane uprawnienia wybierz Dodaj uprawnienie, aby otworzyć panel Zażądaj uprawnień API.
- Wybierz programu SharePoint.
- W sekcji Jakiego typu uprawnień wymaga Twoja aplikacja? wybierz Uprawnienia aplikacji.
- W sekcji Wybierz uprawnienia wybierz opcję Sites.FullControl.All.
- Wybierz Dodaj uprawnienia, aby utworzyć uprawnienie SharePoint.
- Wybierz Udziel zgody administratora dla
<tenant name>
.
Wymagania wstępne dotyczące konfiguracji serwera
Pobierz pakiet NuGet dla zestawu "Microsoft.Identity.Client" w wersji 4.11.0.
- Otwórz https://www.nuget.org/packages/Microsoft.Identity.Client/4.11.0#readme-body-tab
- W obszarze Informacje wybierz pozycję Pobierz pakiet
Zmień nazwę pobranego pakietu z "microsoft.identity.client.4.11.0.nupkg" na microsoft.identity.client.4.11.0.zip.
Uruchom ekstrakcję na microsoft.identity.client.4.11.0.zip.
W wyodrębnionym katalogu otwórz folder lib/net45 i znajdź pliki "Microsoft.Identify.Client.dll" i "Microsoft.Identify.Client.xml", aby użyć ich w późniejszym kroku.
W systemie Windows Server, w którym jest uruchomiona rola serwera aplikacji sieci Web Dynamics 365 Customer Engagement (on-premises), otwórz Menedżera internetowych usług informacyjnych.
- Otwórz polecenie Uruchom z menu Start znajdującego się na pasku zadań systemu Windows.
- Wpisz inetmgr, a następnie naciśnij Enter.
Rozwiń sekcję Lokacje w okienku Połączenia .
Kliknij prawym przyciskiem myszy witrynę programu Microsoft Dynamics CRM , wybierz polecenie Eksploruj, a następnie otwórz folder CRMWeb .
Otwórz folder bin .
Skopiuj dwa pliki "Microsoft.Identity.Client.dll" i "Microsoft.Identity.Client.xml" z wyodrębnionego katalogu pakietów NuGet, a następnie wklej je do folderu bin .
Tworzenie rekordu aplikacji Azure w tabeli PartnerApplicationBase w bazie danych organizacji Dynamics 365 Customer Engagement
- Otwórz SQL Server Management Studio i skopiuj ten skrypt SQL.
IF (SELECT COUNT(*)
FROM OrganizationBase WITH (NOLOCK)) <> 1
THROW 51000, 'Organization records does not equal 1', 1
DECLARE @organizationId UNIQUEIDENTIFIER = (SELECT OrganizationId
FROM OrganizationBase WITH (NOLOCK));
DECLARE @utcNow DATETIME = GetUtcDate();
DECLARE @principalId UNIQUEIDENTIFIER = '00000003-0000-0ff1-ce00-000000000000';
DECLARE @applicationName NVARCHAR(100) = 'Microsoft SharePoint Online';
DECLARE @byoaAppId UNIQUEIDENTIFIER = '<appId>';
--Customer need to provide the app id.
DECLARE @tenantId UNIQUEIDENTIFIER = '<tenantId';
BEGIN TRANSACTION InsertRows
INSERT INTO [dbo].[PartnerApplicationBase]
([PrincipalId]
,[StateCode]
,[Name]
,[UseAuthorizationServer]
,[PartnerApplicationId]
,[StatusCode]
,[ApplicationRole]
,[OrganizationId]
,[CreatedOn]
,[ModifiedOn]
,[TenantId])
VALUES
(@principalId
, 0
, @applicationName
, 1
, @byoaAppId
, 1
, 1
, @organizationId
, @utcNow
, @utcNow
, @tenantId)
COMMIT TRANSACTION InsertRows
W skrypcie zaktualizuj zmienne @byoaAppId i @tenantId przy użyciu wartości identyfikatora aplikacji i identyfikatora dzierżawy skopiowanych wcześniej z portalu Microsoft Azure w sekcji Tworzenie aplikacji platformy Azure z uprawnieniami programu SharePoint w tym artykule.
Sprawdź bazę danych, a następnie wykonaj skrypt.
Potwierdź, uruchamiając kwerendę
SELECT * FROM [PartnerApplicationBase]
wybierającą i weryfikując pola PartnerApplicationId i TenantId .
Przesyłanie certyfikatu w certyfikatach aplikacji Azure
Pobierz istniejący certyfikat Dynamics 365 Customer Engagement (on-premises) przy użyciu tego skryptu.
cd $PSScriptRoot
$OutputFilePath = $PSScriptRoot + "\certificates\existing_crmsharepoints2s.cer"
$RemoveSnapInWhenDone = $False
if (-not (Get-PSSnapin -Name Microsoft.Crm.PowerShell -ErrorAction SilentlyContinue)) {
Add-PSSnapin Microsoft.Crm.PowerShell
$RemoveSnapInWhenDone = $True
}
try {
# Ensure the directory exists
$directory = [System.IO.Path]::GetDirectoryName($OutputFilePath)
if (-not (Test-Path -Path $directory)) {
New-Item -ItemType Directory -Path $directory | Out-Null
}
# Fetch existing certificate using Get-CrmCertificate and filter by CertificateType
$existingCert = Get-CrmCertificate | Where-Object { $_.CertificateType -eq "S2STokenIssuer" }
if ($null -eq $existingCert) {
Write-Error "No certificate found with CertificateType 'S2STokenIssuer'."
return
}
# Store the certificate in the specified path
$certBytes = [Convert]::FromBase64String($existingCert.Data)
[System.IO.File]::WriteAllBytes($OutputFilePath, $certBytes)
Write-Output "Certificate saved to $OutputFilePath"
}
catch {
Write-Error "An error occurred: $_"
}
finally {
if ($RemoveSnapInWhenDone) {
Remove-PSSnapin Microsoft.Crm.PowerShell
}
}
Przekazywanie istniejącego certyfikatu do certyfikatów aplikacji platformy Azure
Otwórz przeglądarkę internetową i przejdź do Azure Portal dla aplikacji Azure AD, która została utworzona w pierwszej sekcji.
Rozwiń Zarządzaj, a następnie wybierz Certyfikaty i Sekrety.
Przekaż utworzony plik certyfikatu.
W sekcji Certyfikaty wybierz pozycję Przekaż certyfikat.
Użyj opcji Przekaż certyfikat, aby wybrać plik certyfikatu, który został utworzony na podstawie skryptu programu PowerShell.
Dodaj opis, a następnie wybierz pozycję Dodaj.
Nowo utworzony certyfikat zostanie wyświetlony na liście Certyfikaty .