À medida que a Microsoft aprimora sua postura de segurança em todos os produtos e serviços, houve alterações recentes na funcionalidade da API que podem afetar clientes que anteriormente contavam com permissões somente de aplicativo para provisionar Notebooks de Classe usando APIs.
Você ainda pode provisionar sites e notebooks em escala usando APIs do Microsoft Graph seguindo um método alternativo com suporte. Este artigo descreve as etapas e fornece links para a documentação relevante.
Visão Geral
Para continuar provisionando notebooks de classe e sites do SharePoint em escala:
- Use a API CreateEducationClass ao criar novos sites (um grupo/site por classe)
- Para sites pré-existentes, use a API CreatePermission do SharePoint para conceder permisisons AppId da Classe OneNote para esse site.
- Depois que as etapas acima forem concluídas, a funcionalidade existente do Notebook de Classe deve ser restaurada e chamadas de API, como GetClassNotebooks, AddTeacher e addStudent , devem funcionar conforme o esperado.
Instruções passo a passo
1. Criar novos sites com CreateEducationClass
Use a API CreateEducationClass para criar um novo Grupo do Microsoft 365 e um site associado do SharePoint para cada classe.
- Essa API provisiona o Grupo, o Site e os recursos associados em uma única chamada.
- Depois que o site for criado, você poderá usar APIs existentes para gerenciar notebooks e permissões.
Referência: Documentação da API CreateEducationClass
2. Conceder permissões a sites existentes
Para grupos ou sites existentes, você deve conceder explicitamente o acesso ao aplicativo Notebook de Classe usando o modelo de permissão Sites.Selected .
Permissões necessárias
- Acesso somente aplicativo usando o escopo Sites.Selected.
- Conceda ao site o controle completo do aplicativo EDU OneNote.
Solicitação de Exemplo
| POST https://graph.microsoft.com/v1.0/sites/{sitesId}/permissions Content-Type: application/json { "roles": ["fullcontrol"], "grantedToIdentities": [{ "application": { "id": "13291f5a-59ac-4c59-b0fa-d1632e8f3292", //Target Application's Client Id "displayName": "EDU OneNote" //Nome de exibição do aplicativo de destino } }] } |
|---|
Referências:
Desenvolver aplicativos que usam permissões Sites.Selected para sites SPO
3. Usar APIs existentes para o gerenciamento de notebooks
Depois que as permissões forem configuradas corretamente, as funcionalidades existentes do Notebook de Classe, como as seguintes APIs, devem continuar funcionando como antes:
GetClassNotebooks
AddTeacher
AddStudent
CreateClassNotebook
- Observação: conforme descrito acima, para novos grupos/sites, use CreateEducationClass em vez disso