Hoe wordt SharePoint gebruikt (toepassing)
OPMERKING: voor projecten die gebruikmaken van het SharePoint van de Adobe, gelieve door te gaan hier.
Als u SharePoint als inhoudsbron gebruikt, gebruikt AEM een geregistreerde Microsoft Azure-toepassing om toegang te krijgen tot uw inhoud. Deze toepassing heeft gedelegeerde machtigingen gedefinieerd waarmee de service SharePoint namens een gebruiker kan benaderen. Deze gebruiker moet worden geregistreerd bij het project dat SharePoint gebruikt.
De services kunnen ook als toepassing en gebruik worden geverifieerd toepassingsmachtigingen toegang tot de sites. Dit vereist extra opstelling door een de plaatsbeheerder van SharePoint die de toestemmingen voor de toepassing kan verlenen.
De voorkeursinstellingen zijn toepassingsmachtigingen, aangezien dit de toegang tot de dienst aan een specifieke plaats van SharePoint beperkt en vereist niet om het even welk geheim van een technische gebruiker te delen. Ook, vermindert het de problemen rond wachtwoordomwenteling.
Hieronder wordt beschreven hoe u de installatie uitvoert toepassingsmachtigingen voor uw project. Als u een technische gebruiker wilt instellen, gaat u verder hier.
Het instellen van SharePoint omvat de volgende stappen:
- Een SharePoint-site maken of identificeren die als site voor het op documenten gebaseerde ontwerpen zal fungeren
- Maak in SharePoint een map die de hoofdmap van de website wordt.
- Vorm
fstab.yaml
met de respectievelijke map - Open het registratieportaal
- De toepassing registreren
- Pas de
sites.selected
toestemming voor de SharePoint-site
1. Maak of identificeer een SharePoint-site
Bespreek met uw afdeling van IT om of een plaats van SharePoint te identificeren of tot stand te brengen die voor document gebaseerd creatie zal worden gebruikt. Eén site kan meerdere websites (projecten) 'hosten'. Deze site ontvangt later de respectievelijke machtigingen, zodat de publicatieservices er toegang toe hebben.
2. De hoofdmap van de website maken
Navigeer naar de gewenste locatie op de hierboven gemaakte of geïdentificeerde SharePoint-site en maak een hoofdmap die de hoofdmap van de website wordt. U kunt het beste niet rechtstreeks een hoofdmap in de SharePoint-lijst gebruiken, zodat u een gedeelde ruimte hebt voor de auteurs om hulpdocumenten te plaatsen, bijvoorbeeld een map met concepten of hoe kan ik-op-auteur-documenten.
Een voorbeeld van een bestandsstructuur kan er als volgt uitzien: website
map als hoofdmap:
3. Configureer de fstab.yaml
De volgende stap is het montagepunt in te vormen fstab.yaml
om naar de hoofdmap van de website te verwijzen. Het heeft gewoonlijk de vorm van
https://<tenant>.SharePoint.com/sites/<sp-site>/Shared%20Documents/website
Dit kan echter afhankelijk zijn van de manier waarop u de SharePoint-site en -lijsten maakt. Om de URL te verkrijgen, is de eenvoudigste manier om het eerste deel van het browseradres te kopiëren-voorbij, bijvoorbeeld:
Voeg vervolgens de rest handmatig toe (door de arcering via de interface te kopiëren, wordt overbodige informatie toegevoegd en kunt u beter een canonieke weergave van de URL gebruiken). Nadat u de URL hebt samengesteld, kunt u deze testen door deze opnieuw in te voeren in de browser. U moet in de mappenweergave van de hoofdmap van uw website terechtkomen.
Werk daarna de fstab.yaml
dienovereenkomstig.
Bijvoorbeeld:
mountpoints:
/: https://adobeenterprisesupportaem.SharePoint.com/sites/hlx-test-project/Shared%20Documents/website
Om de configuratie te voltooien, verbind het fstab.yaml
terug naar de hoofdvertakking.
4. Toegang tot het registratieportaal
Overzicht
Opdat de AEM dienst tot de authored inhoud toegang heeft vereist het een paar informatie en opstelling. De AEM-service (een cloudfunctie) heeft toegang tot de MS Graph-API namens een toepassing (of een geconfigureerde gebruiker). Daartoe moet zij eerst in het kader van een Toepassing. Dit is belangrijk omdat het bereik dat aan de toepassing wordt gegeven bepaalt welke toestemming de dienst op MS Graph API heeft. Het zou bijvoorbeeld toegestaan moeten zijn om documenten te lezen en te schrijven, maar niet om toegangsbeheer te veranderen.
Een toepassing wordt vertegenwoordigd als "Toepassing van de Onderneming"in de respectieve Actieve Folder van een huurder. De toestemmingen die aan die ondernemingstoepassing worden gegeven bepalen uiteindelijk wat de dienst tot in de middelen van die huurder kan toegang hebben. Bepaalde toestemmingen moeten door een Actieve beheerder van de Folder worden goedgekeurd alvorens een gebruiker de toepassing kan gebruiken. Deze zogenaamde "beheerderstoestemming" is een mechanisme om te controleren welke machtigingen apps kunnen hebben en te beheren. Dit is om te voorkomen dat dubieuze apps gebruikers ervan weerhouden een app te vertrouwen die niet officieel is. Dankzij de extra stap voor beheerdersinstemming kan de IT-beveiliging bepalen welke apps de werknemers kunnen gebruiken.
1. Meld u aan bij het registratieportaal
Toepassing maken met MSGraph of Powershell
U kunt de Enterprise-toepassing ook maken via MSGraph of Powershell.
Om het in azure UI zichtbaar te maken moet u ook toevoegen WindowsAzureActiveDirectoryIntegratedApp
-tag. Dit kan direct worden gedaan wanneer het creëren van de toepassing.
Grafiekverkenner gebruiken:
POST https://graph.microsoft.com/v1.0/servicePrincipals
Content-type: application/json
{
"appId": "e34c45c4-0919-43e1-9436-448ad8e81552",
"tags": [
"WindowsAzureActiveDirectoryIntegratedApp"
]
}
powershell gebruiken:
PS> connect-MgGraph -Scopes "Application.ReadWrite.All"
PS> New-MgServicePrincipal -AppId e34c45c4-0919-43e1-9436-448ad8e81552 -Tags WindowsAzureActiveDirectoryIntegratedApp
De Franklin-service toevoegen met toepassingsmachtigingen
Hetzelfde als hierboven, de Enterprise-toepassing voor de Franklin Service (83ab2922-5f11-4e4d-96f3-d1e0ff152856)
nog niet in Azure aanwezig is,
Voeg het toe met de grafiekverkenner of powershell:
Grafiekverkenner gebruiken:
POST https://graph.microsoft.com/v1.0/servicePrincipals
Content-type: application/json
{
"appId": "83ab2922-5f11-4e4d-96f3-d1e0ff152856",
"tags": [
"WindowsAzureActiveDirectoryIntegratedApp"
]
}
powershell gebruiken:
PS> connect-MgGraph -Scopes "Application.ReadWrite.All"
PS> New-MgServicePrincipal -AppId 83ab2922-5f11-4e4d-96f3-d1e0ff152856 -Tags WindowsAzureActiveDirectoryIntegratedApp
Zie ook:
Toepassingsrollen toevoegen met Powershell of Graph Explorer
U kunt de toepassingsrollen ook toevoegen met de volgende stappen:
- Zoek de dienst belangrijkste van de ondernemingstoepassing (
principalId
). Dit is degene die u hierboven hebt gemaakt. - De service principal van de Microsoft Graph API (
resourceId
) - Zoek de id voor de
Sites.Selected
Toepassingsrol (appRoleId
) - Wijs de Rol van de Toepassing aan de Beheerde Identiteit (de Toepassing van de Onderneming) toe
Gebruiken machthebber dit kan gebeuren met :
$ObjectId = "abcdef-1234-49b6-b660-cc85b34fe516" <<------ replace with your enterprise app id
$AAD_SP = Get-AzureADServicePrincipal -SearchString "Microsoft Graph";
$AAD_SP
$MSI = Get-AzureADServicePrincipal -ObjectId $ObjectId
if($MSI.Count -gt 1)
{
Write-Output "More than 1 principal found, please find your principal and copy the right object ID. Now use the syntax $MSI = Get-AzureADServicePrincipal -ObjectId <your_object_id>"
Exit
}
$AAD_AppRole = $AAD_SP.AppRoles | Where-Object {$_.Value -eq "Sites.Selected"}
New-AzureADServiceAppRoleAssignment -ObjectId $MSI.ObjectId -PrincipalId $MSI.ObjectId -ResourceId $AAD_SP.ObjectId[0] -Id $AAD_AppRole.Id
Gebruiken grafiekverkenner het omvat meer stappen :
- Zoek de principal van de ondernemingstoepassing:
GET https://graph.microsoft.com/v1.0/servicePrincipals?$filter=appId eq '83ab2922-5f11-4e4d-96f3-d1e0ff152856'
...
"value": [
{
"id": "6761ada0-733b-4a02-98b2-3db970834fe0",
...
Dit is ons principalId
- De service principal van de Microsoft Graph API zoeken
GET https://graph.microsoft.com/v1.0/servicePrincipals?$filter=appId eq '00000003-0000-0000-c000-000000000000'
...
"value": [
{
"id": "5159db96-7193-414e-9730-b1d1e4448443",
...
Dit is het resourceId
. (de bron die de toepassingsrol definieert)
- Zoek de id van de toepassingsrol.
GET https://graph.microsoft.com/v1.0/servicePrincipals/5159db96-7193-414e-9730-b1d1e4448443/appRoles
...
{
"allowedMemberTypes": [
"Application"
],
"description": "Allow the application to access a subset of site collections without a signed in user. The specific site collections and the permissions granted will be configured in SharePoint Online.",
"displayName": "Access selected site collections",
"id": "883ea226-0bf2-4a8f-9f9d-92c9162a727d",
"isEnabled": true,
"origin": "Application",
"value": "Sites.Selected"
},
...
Deze id is de appRoleId
- Wijs de Rol van de Toepassing aan de Beheerde Identiteit toe. De aanvraag heeft de volgende indeling:
POST https://graph.microsoft.com/v1.0/servicePrincipals/${principalId}/appRoleAssignedTo
Content-Type: application/json
{
"principalId": "${principalId}",
"resourceId": "${resourceId}",
"appRoleId": "${appRoleId}"
}
https://graph.microsoft.com/v1.0/servicePrincipals/6761ada0-733b-4a02-98b2-3db970834fe0/appRoleAssignedTo
Content-type: application/json
{
"principalId": "6761ada0-733b-4a02-98b2-3db970834fe0",
"resourceId": "5159db96-7193-414e-9730-b1d1e4448443",
"appRoleId": "883ea226-0bf2-4a8f-9f9d-92c9162a727d"
}
Machtigingen toevoegen aan SharePoint-site
Om de toestemmingen aan de aandeelpuntplaats toe te voegen, moeten wij zijn vinden SiteId
.
U kunt dit opnieuw doen met behulp van de grafiekverkenner:
GET https://graph.microsoft.com/v1.0/sites/{host-name}:/{server-relative-path}
Voorbeeld:
GET https://graph.microsoft.com/v1.0/sites/adobeenterprisesupportaem.sharepoint.com:/sites/hlx-test-project
{
...
"id": "adobeenterprisesupportaem.sharepoint.com,03cc3587-0e4d-405e-b06c-ffb0a622b7ac,5fbc1df5-640c-4780-8b59-809e3193c043",
...
}
Met de Id
wij kunnen de toestemmingen plaatsen:
POST https://graph.microsoft.com/v1.0/sites/adobeenterprisesupportaem.sharepoint.com,03cc3587-0e4d-405e-b06c-ffb0a622b7ac,5fbc1df5-640c-4780-8b59-809e3193c043/permissions
Content-type: application/json
{
"roles": [
"write"
],
"grantedToIdentities": [
{
"application": {
"id": "83ab2922-5f11-4e4d-96f3-d1e0ff152856",
"displayName": "Franklin Service"
}
}
]
}