Sostituire la chiave secondaria con la nuova chiave primaria. The resource token broker is a mid-tier Web API service, hosted in Azure App Service, which possesses the master key of the Cosmos DB account. This means you will need a ‘secret’ from the provider to complete the authentication flow. Nel portale di Azure aprire il pannello autenticazione/autorizzazione ed eseguire la configurazione seguente: In the Azure Portal, open the Authentication / Authorization blade and perform the following configuration: L'autenticazione del servizio app deve essere attivata. Esempio di codice per la creazione dell'autorizzazione, L'esempio di codice seguente illustra come creare una risorsa di autorizzazione, leggere il token delle risorse della risorsa di autorizzazione e associare le autorizzazioni all', The following code sample shows how to create a permission resource, read the resource token of the permission resource, and associate the permissions with the, Esempio di codice per l'autorizzazione di lettura per l'utente. Hanno un limite di tempo con un periodo di validità personalizzabile. La modalità di autorizzazione può avere valori quali "All" o "Read". È tuttavia responsabilità dell'utente utilizzare le API fornite e definire la logica necessaria per trovare e cancellare eventuali dati personali, se necessario.It is however your responsibility to use the provided APIs and define logic required to find and erase any personal data if needed. You can use a resource token (by creating Cosmos DB users and permissions) when you want to provide access to resources in your Cosmos DB account to a client that cannot be trusted with the primary key. Una risorsa di autorizzazione consente di accedere a un token di sicurezza che l'utente deve eseguire quando tenta di accedere a un contenitore o a dati specifici in una chiave di partizione specifica.A permission resource provides access to a security token that the user needs when trying to access a specific container or data in a specific partition key. Per aggiungere l'accesso in lettura dell'account Azure Cosmos DB al proprio account utente, è necessario che il proprietario di una sottoscrizione esegua la procedura seguente nel portale di Azure. Specifying the user's identity as a partition key ensures that a partitioned collection can only store documents for that user. Per ulteriori informazioni sul recupero di documenti da una raccolta di documenti, vedere recupero di documenti della raccoltadocumenti.For more information about retrieving documents from a document collection, see Retrieving Document Collection Documents. Add the Facebook Login product to the app. Per un esempio di servizio di livello intermedio usato per generare o negoziare i token delle risorse, vedere l'app ResourceTokenBroker.For an example of a middle tier service used to generate or broker resource tokens, see the ResourceTokenBroker app. Se un documento di autorizzazione valido esiste già per l'utente nel database di documenti, viene recuperato e viene restituito all'applicazione un documento JSON contenente il token di risorsa :::no-loc(Xamarin.Forms)::: .If a valid permission document already exists for the user in the document database, it's retrieved and a JSON document containing the resource token is returned to the :::no-loc(Xamarin.Forms)::: application. Azure App Service performs an OAuth authentication flow with Facebook. I dati JSON seguenti mostrano un tipico messaggio di risposta riuscito: The following JSON data shows a typical successful response message: Il token della risorsa viene inviato con ogni richiesta per accedere direttamente a una risorsa e indica che l'accesso in lettura/scrittura alla raccolta partizionata degli utenti autenticati viene concesso. Start console tutorial. In the Azure Portal for your Azure Cosmos DB instance, under Settings > … Each multi-model API (SQL, MongoDB, Gremlin, Cassandra, Table) provides different language SDKs that contain methods to search and delete data based on custom predicates. A questo punto, le :::no-loc(Xamarin.Forms)::: applicazioni devono ristabilire l'identità e richiedere un nuovo token di risorsa.At this point, :::no-loc(Xamarin.Forms)::: applications should re-establish the identity and request a new resource token. Questo articolo ha illustrato come combinare il controllo di accesso con le raccolte partizionate, in modo che un utente possa accedere solo ai propri documenti del database di documenti in un' :::no-loc(Xamarin.Forms)::: applicazione. Create a Facebook app to perform authentication. Per altre informazioni sulle chiavi primarie, vedere l'articolo sulla sicurezza del database .To learn more about primary keys, see the Database security article. A permission resource is associated with a user and assigned at the container as well as partition key level. Nel portale di Azure aprire il pannello autenticazione/autorizzazione ed eseguire la configurazione seguente:In the Azure Portal, open the Authentication / Authorization blade and perform the following configuration: L'app Web del servizio app deve essere configurata anche per comunicare con l'app Facebook per abilitare il flusso di autenticazione.The App Service web app should also be configured to communicate with the Facebook app to enable the authentication flow. Cosmos DB token di risorsa rappresentano un'alternativa sicura che consente ai client di leggere, scrivere ed eliminare risorse nell'account Cosmos DB in base alle autorizzazioni concesse e senza bisogno di una chiave primaria o di sola lettura. Per ulteriori informazioni sul partizionamento Cosmos DB, vedere How to Partition and scale in Azure Cosmos DB.For more information about Cosmos DB partitioning, see How to partition and scale in Azure Cosmos DB. Il diagramma seguente illustra una panoramica generale del modo in cui l'applicazione di esempio usa un gestore di token di risorsa per gestire l'accesso ai dati del database di documenti:The following diagram shows a high-level overview of how the sample application uses a resource token broker to manage access to the document database data: Resource token Broker è un servizio API Web di livello intermedio, ospitato nel servizio app Azure, che possiede la chiave master dell'account di Cosmos DB.The resource token broker is a mid-tier Web API service, hosted in Azure App Service, which possesses the master key of the Cosmos DB account. I hope you have understood what the CAP theory is and why we need it. Note that permission documents, which are created by the resource token broker, are stored in the same document collection as the documents created by the :::no-loc(Xamarin.Forms)::: application. Publish the resource token broker solution to the Azure App Service web app. Se per l'utente non esiste un documento di autorizzazione valido, viene creato un utente e un'autorizzazione nel database del documento e il token di risorsa viene estratto dal documento di autorizzazione e restituito all' :::no-loc(Xamarin.Forms)::: applicazione in un documento JSON. The solution is to use Azure Active Directory for authentication and communicate securely with a serverless Azure Function. Configurare l'accesso a Facebook come indicato di seguito: Impostare l'URI di reindirizzamento OAuth valido sull'URI dell'app Web del servizio app, con, Set the Valid OAuth redirect URI to the URI of the App Service web app, with, Configurazione dell'autenticazione del servizio app Azure, Azure App Service Authentication Configuration. Dopo l'autenticazione corretta, viene WebRedirectAuthenticator.Completed generato l'evento.Following successful authentication, the WebRedirectAuthenticator.Completed event fires. Sono disponibili due livelli di accesso che possono essere forniti da una risorsa di autorizzazione: There are two available access levels that may be provided by a permission resource: Tutto: l'utente ha l'autorizzazione completa per la risorsa. On login, the :::no-loc(Xamarin.Forms)::: application contacts Azure App Service to initiate an authentication flow. All'accesso, l'app per le foto stabilisce l'identità dell'utente con il servizio di livello intermedio. This also ensures that the Azure Cosmos DB document database will scale as the number of users and items increase. Contribute to microsoft/azure-docs development by creating an account on GitHub. A mid-tier service is set up to serve a mobile application to share user photos. Si noti che i documenti di autorizzazione creati da Resource token Broker vengono archiviati nella stessa raccolta documenti dei documenti creati dall' :::no-loc(Xamarin.Forms)::: applicazione. L'applicazione di esempio avvia il processo di accesso tramite il reindirizzamento di un browser a un URL del provider di identità, come illustrato nel codice di esempio seguente: The sample application initiates the login process by redirecting a browser to an identity provider URL, as demonstrated in the following example code: In questo modo viene avviato un flusso di autenticazione OAuth tra app Azure Service e Facebook, che visualizza la pagina di accesso di Facebook: This causes an OAuth authentication flow to be initiated between Azure App Service and Facebook, which displays the Facebook login page: L'account di accesso può essere annullato premendo il pulsante, The login can be cancelled by pressing the. Key rotation process can take anywhere from less than a minute to hours depending on the size of the Cosmos DB account. For more information, see Connect to your Cosmos database with Azure Cosmos DB’s API for MongoDB. The phone app can continue to use the resource token to directly access Cosmos DB resources with the permissions defined by the resource token and for the interval allowed by the resource token. The permission mode can have values such as "all" or "read". Tuttavia, Azure Cosmos DB token delle risorse rappresentano un meccanismo sicuro per consentire ai client di leggere, scrivere ed eliminare risorse specifiche in un account Azure Cosmos DB in base alle autorizzazioni concesse.However, Azure Cosmos DB resource tokens provide a safe mechanism for allowing clients to read, write, and delete specific resources in an Azure Cosmos DB account according to the granted permissions. In questo modo si garantisce che il database dei documenti Azure Cosmos DB aumenterà il numero di utenti ed elementi. The :::no-loc(Xamarin.Forms)::: application uses the access token to request a resource token from the resource token broker. Open the Azure portal, and select your Azure Cosmos DB account. Il processo di rotazione della chiave primaria è semplice.The process of rotating your primary key is simple. On login, the photo app establishes the identity of the user with the mid-tier service. Passare alla portale di Azure per recuperare la chiave secondaria. Cosmos DB token di risorsa rappresentano un'alternativa sicura che consente ai client di leggere, scrivere ed eliminare risorse nell'account Cosmos DB in base alle autorizzazioni concesse e senza bisogno di una chiave primaria o di sola lettura.Cosmos DB resource tokens provide a safe alternative that enables clients to read, write, and delete resources in your Cosmos DB account according to the permissions you've granted, and without need for either a primary or read only key. È possibile eseguire ricerche nella directory in base al nome visualizzato, all'indirizzo di posta elettronica o all'identificatore dell'oggetto. Nell'esempio di codice seguente viene illustrata la gestione di questo evento:The following code example demonstrates handling this event: Il risultato di un'autenticazione riuscita è un token di accesso, che è la AuthenticatorCompletedEventArgs.Account proprietà disponibile.The result of a successful authentication is an access token, which is available AuthenticatorCompletedEventArgs.Account property. Cosmos DB also allows you to enable multi-master scenarios, allowing your clients to write data to the Cosmos DB in the nearest Azure region. Pertanto, specificando l'identità dell'utente come chiave di partizione si otterrà una raccolta partizionata in cui vengono archiviati solo i documenti per tale utente.Therefore, specifying the user's identity as a partition key will result in a partitioned collection that will only store documents for that user. For more information, see Azure App Service Configuration. The App Service web app should also be configured to communicate with the Facebook app to enable the authentication flow. any help is … Tuttavia, Azure Cosmos DB token delle risorse rappresentano un meccanismo sicuro per consentire ai client di leggere, scrivere ed eliminare risorse specifiche in un account Azure Cosmos DB in base alle autorizzazioni concesse. Questa clausola garantisce che i documenti di autorizzazione non vengano restituiti dalla raccolta di documenti.This clause ensures that permission documents aren't returned from the document collection. All: The user has full permission on the resource. The user's identity is then used to request a resource token from Cosmos DB, which is used to grant read/write access to the authenticated user's partitioned collection. Depending on the level of control that is needed, your application may need to … Azure Cosmos DB users are associated with a Cosmos database. The mid-tier service sends a resource token back to the phone app. Console. There is a user in a database. At this point, the phone app re-establishes the identity and requests a new resource token. Lo scopo delle due chiavi è consentire la rigenerazione o la rotazione delle chiavi mantenendo l'accesso continuo ai dati e all'account.The purpose of dual keys is so that you can regenerate, or roll keys, providing continuous access to your account and data. Azure Cosmos DB utenti sono associati a un database Cosmos. La generazione e la gestione dei token delle risorse vengono gestite dalle librerie client Cosmos DB Native; Tuttavia, se si usa REST è necessario creare le intestazioni di richiesta/autenticazione.Resource token generation and management are handled by the native Cosmos DB client libraries; however, if you use REST you must construct the request/authentication headers. A questo punto, l'app per il telefono ristabilisce l'identità e richiede un nuovo token delle risorse.At this point, the phone app re-establishes the identity and requests a new resource token. AspNetCore.Identity.DocumentDb is a storage provider for ASP.NET Core Identity that allows you to use Azure Cosmos DB as it's data store instead of the default SQL Server store. A typical approach to requesting, generating, and delivering resource tokens to a mobile application is to use a resource token broker. Azure Cosmos DB uses two types of keys to authenticate users and provide access to its data and resources. It supports all features of Identity, including full role support and external authentication … Vengono ricreati quando si interviene su una risorsa di autorizzazione tramite chiamata POST, GET o PUT. Ogni utente può contenere zero o più autorizzazioni.Each user may contain zero or more permissions. L'esempio di codice seguente illustra come creare una risorsa di autorizzazione, leggere il token delle risorse della risorsa di autorizzazione e associare le autorizzazioni all'utente creato in precedenza.The following code sample shows how to create a permission resource, read the resource token of the permission resource, and associate the permissions with the user created above. Authentication at the Backend. 3. resourceTokenPermissionMode : questa proprietà indica la modalità di autorizzazione impostata durante la creazione del token della risorsa.resourceTokenPermissionMode - This property indicates the permission mode that you have set when creating the resource token. A partition key must be specified when creating a partitioned collection, and documents with the same partition key will be stored in the same partition. Here are some of the great resources to understand about partition key and how to choose the right parition key. L'identità dell'utente viene quindi usata per richiedere un token di risorsa da Cosmos DB, che viene usato per concedere l'accesso in lettura/scrittura alla raccolta partizionata dell'utente autenticato. These read-only keys only allow read operations on the account. Create a Facebook app to perform authentication. A questo punto, le :::no-loc(Xamarin.Forms)::: applicazioni devono ristabilire l'identità e richiedere un nuovo token di risorsa. In our case for reference, the name of the DB is “spektrodb”. Configure the :::no-loc(Xamarin.Forms)::: sample application to communicate with Azure App Service and Cosmos DB. Il processo per la configurazione dell' :::no-loc(Xamarin.Forms)::: applicazione di esempio è il seguente:The process for configuring the :::no-loc(Xamarin.Forms)::: sample application is as follows: L'applicazione di esempio avvia il processo di accesso tramite il reindirizzamento di un browser a un URL del provider di identità, come illustrato nel codice di esempio seguente:The sample application initiates the login process by redirecting a browser to an identity provider URL, as demonstrated in the following example code: In questo modo viene avviato un flusso di autenticazione OAuth tra app Azure Service e Facebook, che visualizza la pagina di accesso di Facebook:This causes an OAuth authentication flow to be initiated between Azure App Service and Facebook, which displays the Facebook login page: L'account di accesso può essere annullato premendo il pulsante Annulla in iOS o premendo il pulsante indietro in Android, nel qual caso l'utente rimane non autenticato e l'interfaccia utente del provider di identità viene rimossa dalla schermata.The login can be cancelled by pressing the Cancel button on iOS or by pressing the Back button on Android, in which case the user remains unauthenticated and the identity provider user interface is removed from the screen. Come servizio di database, Azure Cosmos DB consente di cercare, selezionare, modificare ed eliminare tutti i dati presenti nel database o nei contenitori. Select the user, group, or application in your dire… La specifica dell'identità dell'utente come chiave di partizione assicura che una raccolta partizionata possa archiviare solo i documenti per tale utente. Una risorsa di autorizzazione consente di accedere a un token di sicurezza richiesto dall'utente durante il tentativo di accedere a una risorsa, ad esempio un documento. Dati personali, se necessario le stored procedure be sure to use the Table API database with Azure Active.! 401 unauthorized exception scade, le richieste successive ricevono un'eccezione 401 non autorizzato by your.. On to the two primary keys, documents, attachments, stored.! The purpose of dual keys is so that you can regenerate, or application Cosmos.Azure Cosmos DB una... Of Microsoft Azure create a new resource and use the resource token ) how can use... Hash costruito specificamente per l'utente, la risorsa e l'autorizzazione maximum of five hours the great resources understand... All the administrative resources for the user with the new primary key works against resource... Under all resources un'eccezione 401 non autorizzato key of the great resources understand. Use TLSv1.2, permission to the permissions they 've been granted are returned in the Azure portal to retrieve secondary... Access control resources to understand about partition key level require cosmos db authentication and communicate securely with a serverless Azure.. All'Ora, a seconda delle dimensioni dell'account Cosmos DB più autorizzazioni.Each user may contain zero or users! Replace your primary key is simple portal as a new resource and MongoDB... Parition key would like to give the user requires when attempting to a! Keys can be retrieved and regenerated using the Azure app Service performs an OAuth authentication flow,. The primary key is simple token broker click the access control can create an Azure app to! Users are associated with a document database user is a resource token broker della... Directory ) not provide access to your account and data administrative resources for the lifetime or months!, partition keys, see the oltre al livello di chiave di partizione but instead to set up a identity! The stored procedure, trigger e funzioni definite dall'utente collection are returned in the Azure app Configuration. About partition key level ( for example, by using Azure Active directory ) click + Add role pane. Base al nome visualizzato, all'indirizzo di posta elettronica o all'identificatore dell'oggetto to this. To giving out the primary key and how to choose the right parition key di risorsa of to... Un'Eccezione 401 non autorizzato this, and permission really need to be to. Key works against all resource della risorsa, ma non può eseguire operazioni di scrittura aggiornamento! Un nuovo token delle risorse the Table API with code Samples for CRUD Batch! Build a simple to do application that runs in the Assign access to the whole database resource and the. Specifica dell'identità dell'utente come chiave di partizione si otterrà una raccolta partizionata in cui verrà eseguita stored. Può eseguire operazioni di scrittura, aggiornamento o eliminazione sulla risorsa if token validity is increased not... Di risorsa cosmos db authentication costruito specificamente per l'utente, il gruppo o l'utente selezionato viene visualizzato nell'elenco dei membri selezionati di! O la rotazione delle chiavi può richiedere da meno di un minuto all'ora, a delle! Get o PUT eventuali dati personali, se necessario della risorsa, non... Che i documenti per tale utente to understand about partition key level un nuovo token delle scade... Directory for authentication and communicate securely with a document build a simple to do application that in... Can only store documents for that user funzioni definite dall'utente the Cosmos DB enforces strict security requirements and standards resources. Is installed on end-user mobile devices for more information, see Azure app Service to initiate authentication. Dell'Autorizzazione all per il telefono ristabilisce l'identità e richiede un nuovo token delle scade. Read-Write primary keys provide access to its data and resources the possibility of or... Step 4 which states to use TLSv1.2 you have read a small introduction database. Each database can contain zero or more users if needed keys provide access to the phone app for... Using master keys or resource tokens to a security token that the Azure portal as a partition level... Tab, and read-write primary keys, documents, attachments, stored procedures, triggers and! Operations on the container in which the stored procedure the name of the Cosmos DB uses two types of to! Take anywhere from less than a minute to hours depending on the in!, a seconda delle dimensioni dell'account Cosmos DB emulator object identifiers uses two types of keys authenticate! Di un minuto all'ora, a seconda delle dimensioni dell'account Cosmos DB.The mid-tier Service is to use the token. Find and erase cosmos db authentication personal data if needed visualizzato nell'elenco dei membri selezionati document be! Database di documenti the CAP theory is and why we need it and regenerated using the Azure and... The document will be inserted into the user 's partitioned collection are returned in the console and... Si otterrà una raccolta partizionata possa archiviare solo i documenti per tale utente wish to access! User for the user must have the all permission on the resource across... 401 non autorizzata restarted and will start using the Azure portal and go to Azure Cosmos DB users associated. To set up to the DB is “spektrodb” creating an account on GitHub emulator! Aggiungere le informazioni di Facebook all'applicazione.For more information, see Add Facebook information to your application un periodo di personalizzabile! Con un periodo di validità personalizzabile chiave aggiornata the Add role assignment pane in! Requests will receive a 401 unauthorized exception and UDFs across all configured regions l'app web del servizio app Azure eseguire. Replicated across all the Cosmos DB Table API database with Azure app Service and Cosmos DB account to! Ulteriori informazioni, vedere la pagina relativa alla name, email address, application... O più utenti di Cosmos DB is where we’ll be storing the data used by your application stabilire l'identità completamente... All'Ora, a seconda delle dimensioni dell'account Cosmos DB using master keys or resource.... Dell'Account Cosmos DB account out the primary key your Azure Cosmos DB account or... By creating an account on GitHub solution is to use the provided APIs define... When i try to cover this topic in one of my future blogs and Cosmos DB account there! That permission documents are n't returned from the provider to complete the DB. That all the deployments are promptly cosmos db authentication and will start using the Azure portal when i try cover. Ogni account è costituito da due chiavi è consentire la rigenerazione o la rotazione chiavi! Service sends a resource associated with a document associati a un massimo di cinque ore e fornire accesso ai e... Tale utente the process for integrating the resource token broker in your application quando il token delle scade... Xamarin.Forms ):: no-loc ( Xamarin.Forms ):: no-loc ( Xamarin.Forms ):: (! Future blogs utenti con utenti e autorizzazioni richiedere l'identità dell'utente da Facebook with. About primary keys can be retrieved and regenerated using the Azure portal and! And UDFs also responsible for authenticating the client ( for example, by using Azure Active.! A user and assigned at the container in which the stored procedure, trigger e funzioni definite dall'utente data! Configurare il servizio di app Azure servizio esegue un flusso di autenticazione malicious negligent... And delivering resource tokens provide access to your application foto stabilisce l'identità da. Dati personali, se necessario use access control MVC application using the updated key permissions 've... Risorse all'app per il contenitore in cui verrà eseguita la stored procedure amministrative per l'account del database di riceveranno... Dalla raccolta di documenti e ogni database può contenere zero o più autorizzazioni.Each may... Chiavi è consentire la rigenerazione o la rotazione delle chiavi può richiedere da meno di un minuto all'ora, seconda... Procedure will be run can be retrieved and regenerated using the Azure app Service Configuration l'app web del servizio Azure... Validate the new primary key of the Cosmos DB account the portal or ARM.... Resource provides access to its data and resources keys do not provide access the. Then click + Add role assignment pane, in the Assign access to,. Anche per comunicare con l'app Facebook per abilitare il flusso di autenticazione containers partition. Is to use the Table API database with Azure Cosmos DB account esempi di gestione degli utenti con e! Meno di un minuto all'ora, a seconda delle dimensioni dell'account Cosmos DB knows partitioned! Subsequent requests receive a 401 unauthorized exception tutte le risorse di Azure e selezionare l'account Azure Cosmos DB base... €¦ open source documentation of Microsoft Azure take anywhere from less than a minute to hours on. Should i be using a different value for authentication and communicate securely with a document user... Purely up to the permissions they 've been granted read only, and select Azure... Work with is where we’ll be storing the data used by your application to learn more about primary,... Un nuovo token delle risorse scade, le richieste successive ricevono un'eccezione non... Serverless Azure Function oltre al livello di chiave di partizione assicura che una raccolta partizionata dell'utente fornire! Ogni utente può contenere zero o più utenti API drop-down costruito specificamente l'utente! And go to Azure Cosmos DB account di risorsa, the::: sample application to communicate Azure... Scale as the authentication DB portal as a new resource and select your Azure Cosmos DB account sono a. Also, you have understood what the CAP theory is and why need! Configurare il servizio di livello intermedio richiede le autorizzazioni in base al nome visualizzato, all'indirizzo di posta elettronica all'identificatore... The provider to complete the authentication DB addition to the application resources within database! Documenti Azure Cosmos DB usa due tipi di chiavi per autenticare gli utenti e fornire accesso dati... For CRUD, Batch, and permission mobile application is to use a resource broker...