Posted on

Register a web application with Azure AD Portal App Registration to connect to a Microsoft 365 tenant

PowerShell Limits

Through Powershell it is possible to connect to a Microsoft 365 tenant to perform operations on users, groups and any other element of the tenant. When you use this tool, Powershell presents you with the mask for entering your account and password. You can write accounts and passwords directly in the Powershell script but it would be a serious security compromise.

Application

An alternative is to build a software that connects directly to the Tenant through customized keys present in the Tenant itself. In other words, it is necessary to communicate to the Tenant that there is a certain application that is authorized to access the Tenant. Furthermore, for each operation that you want to perform on the Tenant it is necessary to specify the appropriate permissions. To create these applications, we recommend that you follow the excellent tutorial “.Net Core console application for calling Microsoft Graph“.  This post proposes the images present in the previous tutorial only to specify how the application must be prepared on the Microsoft Tenant.

Register a web application with Azure AD Portal App Registration

Open a browser and navigate to the Azure Portal. Login using your account. Select the resource “Azure Active Directory”. On the left side menu, select “App regitstration”. Click New registration from the current page.

On the Register an application page, specify the following values:

  • Name = Name of your Application
  • Supported account types
  • Redirect URI
    • Type = Web
    • Value = https://localhost:8080   (*)

(*) The Redirect URI value must be unique within your domain. This value can be changed at a later time and does not need to point to a realy hosted URI.

It is now necessary to store 2 values that will be used in your application:

  • Application (client) ID
  • Directory (tenant) ID

Certificates & secrets

Click Certificates & secrets.

  1. Click New client secret.
  2. On the Add a client secret dialog, specify the following values:
    • Description = Your secret’s description
    • Expires = In 1 year (for example)
  3. Click Add.

After the screen has updated with the newly created client secret copy the VALUE of the client secret. This secret string is never shown again, so make sure you copy it now.

API permissions

Click API permissions.

  • Click Add a permission
  • On the Request API permissions panel select Microsoft Graph.

  • Select Application permissions.

Now you have to choose between the permissions to authorize your app. For example, to create an application to read alla information about Tenant’s users, in the “Select permissions” search box type “User”.Select User.Read.All from the filtered list. At the end, on the API permissions content blade, click Grant admin consent for the Tenant.

Summary of the data necessary for the application

Let’s see what data your application needs to connect and operate on the Microsoft Tenant.

  • applicationId = “xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx”;
  • applicationSecret = “xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx”;
  • tenantId = “xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx”;
  • redirectUri = “https://localhost:8080”;
  • domain = “yourtenant.onmicrosoft.com”;

Permissions

  • User.Read.All : Read all users’ full profiles
  • User.ReadWrite.All : Read and write all users’ full profiles
  • Group.ReadWrite.All : Read and write all groups
  • Notes.ReadWrite.All : Read and write all OneNote notebooks

Documentation

Posted on

Apache su Windows – AH00072: make_sock: could not bind to address [::]:80

Scenario

Sul vostro Windows,  Apache non parte. Andate nell’event viewer e trovate l’evento di errore :

AH00072: make_sock: could not bind to address [::]:80

Problema

Il problema è dovuto al fatto che una applicazione sta utilizzando la porta 80 del vostro sito su Apache. Come scoprire quale è questa applicazione ?

Aprite il command prompt (cmd). Digitate

netstat -ano

Vedete tutte le porte aperte del vostro computer occupate da una applicazione. Trovate la riga che (in questo caso) riguarda la porta 80. Alla colonna PID è indicato il numero del programma che sta usando la vostra porta.

Aprite task manager (gestione attività) , nella tab “Dettagli” attraverso la colonna PID trovate il programma che sta usando la vostra porta.

Soluzione

Avete 2 possibilità : o fermate il programma oppure, se il programma vi serve, cambiate la porta usata da questo programma, se possibile, oppure quella usata da Apache.

Se il programma che avete trovato attraverso il PID è System, significa che è lo stesso Windows a bloccare la porta. Aprite i servizi e dovete stoppare il servizio “Servizio Pubblicazione sul Web“. Dovrete anche settare la partenza in manuale, se invece fosse in Automatico perché altrimenti il giorno dopo vi si ripresenterebbe il problema.

Posted on

Windows server – Active Directory – useful links

Move active directory roles from a domanin controller ti another

VERIFICARE E MODIFICARE I RUOLI FSMO DI UN DOMINIO WINDOWS

Backup Domain Controller

Aggiungere un Backup Domain Controller ad un dominio Active Directory esistente

Installing licenses for Remote Desktop

Licensing Mode for Remote Desktop Session Host is not Configured

Modalità gestione licenze di Desktop remoto non configurata

Posted on

iis error 0x80070021 on web.config

Questo errore si presenta installando un sito con IIS in locale su un windows 10 o un windows 8.1. Non è escluso che si possa manifestare anche sui sistemi operativi server.

Dettaglio Errore

Modulo
IIS Web Core

Notifica
BeginRequest

Gestore
Non ancora determinato

Codice errore
0x80070021

Errore di configurazione
Impossibile utilizzare la sezione di configurazione in questo percorso. L’errore si verifica quando la sezione è bloccata a livello padre. Il blocco avviene per impostazione predefinita (overrideModeDefault=”Deny”) o è impostato esplicitamente da un tag di percorso con overrideMode=”Deny” o con il precedente allowOverride=”false”.

File di configurazione
\\?\C:\inetpub\wwwroot\test\web.config

Percorso fisico
C:\inetpub\wwwroot\test\miofile

Metodo di accesso
Non ancora determinato

Utente accesso
Non ancora determinato

SOLUZIONE

Dovete installare anche .NET e gli strumenti di sviluppo di IIS

oppure

Posted on

Installare Windows 2019 server su HPE server

Volete installare Windows 2019 server su un server HPE. Avete scaricato la vostra iso dal sito Microsoft.

Entrando sul server HPE in Intelligent Provisioning vi rendete conto che potete installare solo da CD ROM. Ma voi non avete montato il lettore di CD nel vostro server.

Con la vostra iso create una usb bootable usando per esempio Rufus. Non funziona!

Scaricate dal sito HP la “USB Key Utility” per creare una usb bootable con le specifiche HPE. Non funziona!

Cosa fare ?

La soluzione è molto semplice ma mal documentata.

Soluzione

Dal vostro computer collegatevi alla pagina ILO del server HP. Per farlo dovete collegare la porta ILO del server (è una porta ethernet particolare) alla rete. Accendendo il server, se nella vostra rete è attivo un DHCP server, all’accensione della macchina vedrete, in basso, l’indirizzo ip assggnato a ILO. Se non è attivo un DCHP server dovrete mettere un ip statico andando nelle utilità (pulsante F9).

Sul case del vostro server HPE c’è un adesivo con la password per accedere a ILO. Collegatevi dal vostro computer con un browser web all’IP di ILO. L’utente è “Administrator”. Eseguite il login.

In questo esempio sto usando ILO 5.

Sulla sinistra spingete su “Remote Console”.

Vi compare una pagina da cui potete aprire delle console di gestione del server, che sfruttando diverse tecnologie. Io sto usando la HTML 5. Dopo che si è aperta la console, in alto avete un pulsante con un cerchio. Potete selezionare il vostro file iso che verrà montato sul CD/DVD del server.

A questo punto potete riavviare la macchina. Per farlo potete inviare il comando ALT+CTRL+CANC tramite la tastiera della Remote Console.

Quando riavviate il server il vostro iso sarà montato su CD/DVD e potrete iniziare l’installazione tramite Intelligent Provisioning.

 

Posted on

Error “CredSSP” Error using rdp on Windows Server 2012 R2

Scenario

You are trying to connect via rdp to windows server 2012 r2 and you receive this error :

An authentication error has occurred.
The function is not supported.
Remote Computer: your hostname
This could be due to CredSSP encryption oracle remediation.

Solution

Download and install KB4103725 form Microsoft Update Catalog

After installing you need to restart the server.

Posted on

Fix Windows Update errors

Open Start, type: CMD
Right click CMD
Click Run as administrator

Type each of the following then hit Enter

taskkill /f /fi "SERVICES eq wuauserv" 
(Do this multiple times)
net stop cryptSvc
net stop bits
net stop msiserver
ren C:\Windows\SoftwareDistribution SoftwareDistribution.old
rmdir C:\Windows\SoftwareDistribution\DataStore
rmdir C:\Windows\SoftwareDistribution\Download

When complete, hit Enter, then restart, then try updating again.

If that does not work..

1. Open Start, type: CMD
Right click CMD
Click Run as administrator

Type each of the following then hit Enter

Run these codes:

Net Stop bits
Net Stop wuauserv
Net Stop appidsvc
Net Stop cryptsvc
Ren %systemroot%\SoftwareDistribution SoftwareDistribution.bak
Ren %systemroot%\system32\catroot2 catroot2.bak
Net Start bits
Net Start wuauserv
Net Start appidsvc
Net Start cryptsvc

After running these commands, check if your issue is fixed.