Requisitos
Esta página do wiki aborda quais requisitos e permissões (a nível de sistema) precisam ser concedidos para que os runbooks possam ser executados.
Módulos do PowerShell
Os runbooks compartilhados disponíveis em GitHub esperam/usar os seguintes módulos do Windows PowerShell 5.1:
RealmJoin.RunbookHelperAz.AccountsAz.StorageAzureADExchangeOnlineManagement
O Portal RealmJoin importará e instalará automaticamente esses módulos se referenciados dentro de um runbook. Essa importação também respeitará as versões mínimas especificadas para os módulos.
Permissões
Os runbooks compartilhados do RealmJoin usam a identidade gerenciada atribuída ao sistema para interagir com o Entra ID, MS Graph API etc.
A lista a seguir de funções e permissões permitirá que você use todos os runbooks atualmente disponíveis em nosso repositório compartilhado.
Não é recomendado reduzir essas funções/permissões, pois os runbooks são testados apenas com esse conjunto de permissões. Se você reduzir o conjunto de funções/permissões, alguns runbooks deixarão de funcionar.
Funções do Entra ID
Atribua as seguintes funções do Entra ID à identidade gerenciada
Administrador de usuário
Administrador de dispositivo em nuvem
Administrador do Exchange
Administrador do Teams
Permissões da Graph API
Conceda as seguintes permissões da Graph API à identidade gerenciada
AppCatalog.ReadWrite.AllApplication.ReadWrite.AllAuditLog.Read.AllBitlockerKey.Read.AllChannel.Delete.AllChannelMember.ReadWrite.AllChannelSettings.ReadWrite.AllCloudPC.ReadWrite.AllDevice.Read.AllDeviceLocalCredential.Read.AllDeviceManagementApps.ReadWrite.AllDeviceManagementConfiguration.ReadWrite.AllDeviceManagementManagedDevices.PrivilegedOperations.AllDeviceManagementManagedDevices.ReadWrite.AllDeviceManagementServiceConfig.ReadWrite.AllDirectory.ReadWrite.AllGroup.ReadWrite.AllIdentityRiskyUser.ReadWrite.AllInformationProtectionPolicy.Read.AllMail.SendOrganization.Read.AllPlace.Read.AllPolicy.Read.AllReports.Read.AllRoleManagement.Read.AllTeam.CreateTeamSettings.ReadWrite.AllUser.ReadWrite.AllUserAuthenticationMethod.ReadWrite.AllWindowsUpdates.ReadWrite.All
Outras permissões de API de aplicativo
Conceda as seguintes permissões da API do Office 365 Exchange Online à identidade gerenciada
Exchange.ManageAsApp
Conceda as seguintes permissões da API do WindowsDefenderATP à identidade gerenciada
Machine.Read.AllMachine.IsolateMachine.RestrictExecutionTi.ReadWrite.All
Conceda as seguintes permissões da API do SharePoint à identidade gerenciada
User.Read.AllSites.Read.AllSites.FullControl.All
Concessão de funções e permissões
Conceder permissões a identidades gerenciadas atualmente não pode ser feito usando o Portal do Azure. Recomendamos o uso do MS Graph / scripts PowerShell para isso.
Você pode encontrar um exemplo para esse processo aqui.
Permissões de Recursos do Azure
Conceda pelo menos acesso "Colaborador" à assinatura ou ao grupo de recursos que hospeda a Conta de Automação do Azure para os runbooks
Alguns runbooks usarão uma Conta de Armazenamento do Azure para armazenar relatórios ou backups. Conceda pelo menos acesso "Colaborador" à assinatura correspondente ou ao grupo de recursos. A maioria dos runbooks então poderá criar os recursos dentro do grupo de recursos por conta própria.
Métodos de autenticação
Identidades gerenciadas
A Automação do Azure oferece suporte a Identidades gerenciadas (atribuída ao sistema) como a principal forma de autenticação. Isso substitui as contas RunAs obsoletas.
Os Runbooks do RealmJoin atualmente suportam contas RunAs se nenhuma identidade gerenciada estiver configurada.
Se uma identidade gerenciada e uma conta RunAs estiverem configuradas ao mesmo tempo, os runbooks do repositório compartilhado do RealmJoin preferirão automaticamente usar a identidade gerenciada ao usar versões mais novas do nosso RealmJoin.RunbookHelper Módulo a partir da v0.8.0.
Versões mais antigas do módulo não podiam utilizar totalmente identidades gerenciadas e preferiam a conta RunAs.
Certifique-se de conceder as permissões necessárias à identidade gerenciada ou desative-a completamente para usar apenas a conta RunAs.
Segredo do cliente
Alguns runbooks privados podem precisar de autenticação no estilo ClientID/Secret. Atualmente não há runbooks compartilhados que exijam ClientID e Secret.
Se necessário, um ClientID e Secret podem ser armazenados nas credenciais gerenciadas chamadas "realmjoin-automation-cred" na Conta de Automação do Azure.
Atualmente a "realmjoin-automation-cred" na conta de automação é criada pelo RJ-Wizard por padrão, mas preenchida com valores aleatórios - eles terão que ser preenchidos com valores corretos.
Conta de usuário (problemática)
Módulos mais antigos podem precisar de um objeto de usuário "real" para operar.
O Microsoft Teams agora é capaz de operar via Identidade Gerenciada. Todos os runbooks de Voz/Telefone foram adaptados para usar Identidade Gerenciada.
Se você quiser usar um usuário falso, terá de
Criar um objeto de usuário (ADM-), por exemplo,
ADM-ServiceUser.TeamsAutomationAtribuir uma senha ao usuário
Definir a senha para nunca expirar (ou acompanhar as alterações de senha conforme necessário)
Desativar MFA para esse usuário / certificar-se de que o acesso condicional não esteja bloqueando o usuário
Criar um objeto de credenciais na Conta de Automação do Azure que você usa para os Runbooks do RealmJoin, chamar as credenciais por exemplo
usuáriofalsoe armazenar as credenciais.
Esta não é uma abordagem recomendada e deve ser evitada. Nenhum runbook padrão usa mais esse cenário.
Last updated
Was this helpful?