1646156015
If you've ever used LinkedIn to find business leads, you know how powerful it is. With the Hubspot-LinkedIn integration, you can export all of your LinkedIn contacts and data. Just click the Save in Sales Navigator button, and you'll be taken to a screen where you can search for new contacts. Your LinkedIn contacts will be automatically imported to Hubspot. You can then use the LinkedIn app to send your prospects or sales leads to your website.
In addition to allowing, you to send LinkedIn messages directly to your contacts, this HubSpot LinkedIn integration also allows you to enrich your Hubspot profiles with additional information about your leads. This is important for your sales strategy because it allows you to target the right people with the right messages at the right time.
Once you've integrated Hubspot with LinkedIn, the process is straightforward. First, you need to have a Hubspot account. Next, you'll want to check the LinkedIn ads account and publish the ads tool. Once you're logged in, go to the settings menu and select "Advertising." Then, click on the "Marketing" option, and then click on the LinkedIn ad.
Once you've set up your Hubspot account, you can link your LinkedIn ads to it. This will help you follow up with your leads after they've become a customer. Lastly, you can use the LinkedIn app to send your salespeople emails to your lead base. The resulting email will include all the details you need to make sales. When using this integration, make sure that you make the data available in your CRM.
By using the Hubspot-LinkedIn integration, you can automate postings on LinkedIn. You can set up an automated system to manage your LinkedIn account, and you can even create custom metrics to track your results. This way, you can see which posts are generating the most traffic and who's engaging with your content. This will help you determine the best way to optimize your social media marketing campaign. You can also track your leads' activity over time.
The Hubspot LinkedIn integration is one of the most powerful ways to integrate your social media accounts. You can also use the LinkedIn link to keep track of your contacts. There are many other benefits that come with the LinkedIn integration. For instance, you can track your followers' engagement and follow their activity.
Using the Hubspot-LinkedIn integration, you can easily integrate your social media accounts with your Hubspot account. It's important to make sure that your social media pages are optimized for the most success. By using this tool, you can manage your content and boost your conversion rate with LinkedIn. It's also important to use the LinkedIn ad tools, which you can access from your Hubspot account.
You can also integrate your LinkedIn accounts with Hubspot using Lead Jet. The Hubspot-LinkedIn integration allows you to import all of your LinkedIn contacts' data. It also allows you to import your LinkedIn conversations and profiles. You can then use the data you've collected to enhance your marketing efforts. If you've used LinkedIn in the past, you'll be able to easily sync your data with your Hubspot account.
The conversations will be stored in LinkedIn and won't be backed up in your Hubspot account. Those contacts that don't have a Hubspot system will have next to their name and won't be able to view your emails.
The Hubspot LinkedIn integration helps you manage your social media accounts by providing enhanced contact records. Your Hubspot-LinkedIn integration also allows you to schedule social media posts in advance.
Its social media calendar lets you schedule the posts ahead of time. Moreover, you can send direct InMail messages to your connections in LinkedIn without leaving your Hubspot account. There are other advantages of using the Hubspot-LinkedIn integration.
1597222800
In our previous posts in this series, we spoke at length about using PgBouncer and Pgpool-II , the connection pool architecture and pros and cons of leveraging one for your PostgreSQL deployment. In our final post, we will put them head-to-head in a detailed feature comparison and compare the results of PgBouncer vs. Pgpool-II performance for your PostgreSQL hosting !
The bottom line – Pgpool-II is a great tool if you need load-balancing and high availability. Connection pooling is almost a bonus you get alongside. PgBouncer does only one thing, but does it really well. If the objective is to limit the number of connections and reduce resource consumption, PgBouncer wins hands down.
It is also perfectly fine to use both PgBouncer and Pgpool-II in a chain – you can have a PgBouncer to provide connection pooling, which talks to a Pgpool-II instance that provides high availability and load balancing. This gives you the best of both worlds!
PostgreSQL Connection Pooling: Part 4 – PgBouncer vs. Pgpool-II
While PgBouncer may seem to be the better option in theory, theory can often be misleading. So, we pitted the two connection poolers head-to-head, using the standard pgbench tool, to see which one provides better transactions per second throughput through a benchmark test. For good measure, we ran the same tests without a connection pooler too.
All of the PostgreSQL benchmark tests were run under the following conditions:
We ran each iteration for 5 minutes to ensure any noise averaged out. Here is how the middleware was installed:
Here are the transactions per second (TPS) results for each scenario across a range of number of clients:
#database #developer #performance #postgresql #connection control #connection pooler #connection pooler performance #connection queue #high availability #load balancing #number of connections #performance testing #pgbench #pgbouncer #pgbouncer and pgpool-ii #pgbouncer vs pgpool #pgpool-ii #pooling modes #postgresql connection pooling #postgresql limits #resource consumption #throughput benchmark #transactions per second #without pooling
1623250560
In today’s world, data is the crux of major business decisions used by organizations all over the world. As such, it is imperative that the organizations have access to the right data and be able to analyze and make business decisions proactively. This article talks about data connectivity, the related concepts, its benefits, as well as a discussion on some data connectivity solutions.
#big data #data connectivity #data connectivity solutions #connectivity
1655722800
La autenticación solo de aplicaciones de Azure AD se usa para autenticarse en los servicios de M365 y realizar algunas operaciones, como leer los datos, cargar los datos o realizar algunos trabajos de back-end a través de scripts de automatización. Microsoft recomienda utilizar la autenticación basada en certificados para sus aplicaciones registradas en Azure AD para autenticarse en el M365 o en cualquier servicio en la nube. CBA es un mecanismo extremadamente robusto y seguro para validar la identidad del usuario.
En este artículo, quiero hablar sobre el caso de uso que encontré recientemente. Anteriormente, estaba usando la autenticación de solo aplicación de SharePoint, que es el concepto de ACS (servicios de control de Azure), donde el administrador de la colección de sitios puede crear un ID de cliente y un secreto de cliente agregando /_layouts/appregnew.aspx en la colección de sitios y usando las credenciales del cliente. en aplicación. Sin embargo, hay algunos problemas al usar este método de token de acceso de solo aplicación de ACS.
Puede consultar más información sobre la autenticación basada en token de ACS en la sección de referencias.
La buena noticia es que en la aplicación Azure AD, los permisos de API para SharePoint vienen con nuevos permisos llamados "Sitios.Seleccionados", que permitirán que su aplicación Azure AD se autentique en varias colecciones de sitios utilizando un solo cliente y detalles del certificado.
Antes de pasar a esta autenticación solo de aplicaciones de Azure AD mediante certificados, intentaremos comprender qué es la autenticación basada en certificados (también conocida como CBA) en Azure AD. Hay 2 tipos de CBA en Azure AD.
Anteriormente, para implementar el CBA, los servicios de ADFS deben implementarse entre los usuarios y Azure AD. CBA con ADFS usa certificados X.509 para autenticarse en Azure AD.
La última versión, que es Azure AD CBA, no necesita configuración ni implementación de AD FS. Los usuarios pueden interactuar directamente con Azure AD y autenticarse en las aplicaciones.
Para obtener más detalles sobre CBA con AD FS y Azure AD CBA, puede consultar los artículos mencionados en la sección de referencias.
Ahora seguiremos los pasos para crear la aplicación Azure AD, con permisos de API "Sitios. Seleccionado” de tipo “Aplicación”. Luego use esta aplicación de Azure AD para autenticarse en varias colecciones de sitios. Para poder seguir correctamente el artículo, es necesario tener instalada la última versión de PnP Powershell.
Paso 1
Abra PowerShell ISE o las ventanas de comandos como administrador.
Paso 2
Registre la aplicación ejecutando el siguiente comando PS. Asegúrese de que la cuenta que ejecuta los siguientes comandos tenga derechos de 'Administrador global'. Siga las indicaciones si la cuenta tiene MFA (autenticación multifactor habilitada)
Register-PnPAzureADApp -ApplicationName SPSitesSelected -Tenant contosodev.onmicrosoft.com -Store CurrentUser -SharePointApplicationPermissions "Sites.Selected" -Interactive
Paso 3
En una autenticación exitosa, recibirá el siguiente mensaje que dice que debe esperar 60 segundos para verificar los artefactos requeridos e iniciar el flujo de consentimiento.
Paso 4
Se le pedirá que se autentique una vez más para registrar la aplicación y luego para crear un certificado y una huella digital. Siga las instrucciones de nuevo
Paso 5
Ahora tendrá una ventana emergente de consentimiento en una autenticación exitosa similar a la siguiente. Muestra el nombre de la aplicación (en este caso, SPSites seleccionado) y opciones para Aceptar y cancelar.
También puede verificar los detalles de la aplicación haciendo clic en 'Información de la aplicación'.
Paso 6
Después de aceptar el consentimiento haciendo clic en 'Aceptar', debería ver la siguiente información en la ventana de salida del comando.
Tendrás los siguientes valores,
Debe anotar solo el ID del cliente, la huella digital y la ubicación de los archivos Pfx y Cer.
Los pasos anteriores confirman que la aplicación de Azure AD se crea con los permisos necesarios, que es "Sitios.Seleccionados". Esto significa que la aplicación de Azure AD ahora se puede configurar para autenticarse solo en sitios específicos.
Ahora, para otorgar acceso a la aplicación Azure AD, ejecute el siguiente conjunto de comandos.
Paso 1
Inicie sesión en la URL de administración de SharePoint para su arrendatario mediante el módulo PnP PowerShell con credenciales de administrador global.
Connect-PnPOnline -Url "https://contoso-admin.sharepoint.com" -Interactive
Paso 2
En la autenticación, obtendrá la siguiente información, sobre los permisos sobre lo que podría hacer el shell de administración de PnP.
Aquí puede dar su consentimiento en nombre de la organización o dejarlo sin marcar. Si marcó 'Consentimiento en nombre de su organización', no se solicitará el consentimiento de ningún otro usuario.
Paso 3
Otorgue el permiso a la aplicación ejecutando el siguiente comando. Tenga en cuenta que solo hay 2 conjuntos de permisos que puede otorgar a la aplicación, que es 'Lectura' o 'Escritura'.
Grant-PnPAzureADAppSitePermission -AppId 'YOUR APP ID HERE' -DisplayName 'APP DISPLAY NAME HERE' -Site 'https://contosodev.sharepoint.com/sites/CBADemo1' -Permissions Write
Paso 1
Valide el acceso a la aplicación conectándose a sitios que tengan permisos. Debería ver el contenido sin ningún problema. En este caso, desconéctese de las conexiones PnP anteriores si existen conexiones anteriores.
Disconnect-PnPOnline
Paso 2
Valide que no exista otra conexión PnP escribiendo el siguiente comando.
Get-PnPConnection
Debería ver el error que dice "La conexión actual no tiene contexto de SharePoint".
Paso 3
Ahora conéctese al sitio de SharePoint usando las credenciales de la aplicación Azure AD.
Connect-PnPOnline -Url "https://contosodev.sharepoint.com/sites/CBADemo2" -ClientId "AZURE AD APP ID" -Thumbprint "CERT THUMP PRINT" -Tenant "YOUR TENANT DOMAIN"
Tenga en cuenta que los valores de ID de aplicación (ID de cliente) y Huella digital se generan en el Paso 6 en la sección "Crear aplicación de Azure AD". También puede obtener los detalles de su Azure AD iniciando sesión en Azure AD Portal y revisando su aplicación en 'Aplicaciones empresariales'.
De manera similar, el dominio del arrendatario se puede obtener haciendo clic en 'Azure Active Directory' desde el inicio rápido y buscando el valor 'Dominio principal'.
Paso 4
Ahora verifique a qué sitio está conectada la aplicación ejecutando el siguiente comando.
Get-PnPSite
Paso 5
Ahora obtenga la lista de todas las listas en esta colección de sitios ejecutando el siguiente comando.
Get-PnPList
Puede ejecutar los mismos comandos para cualquier otra colección de sitios a la que necesite acceder la aplicación Azure AD.
Paso 6
Valide el acceso a la aplicación conectándose a sitios a los que no se les otorga acceso. Debería ver el error 403 prohibido.
Connect-PnPOnline -Url "https://contosodev.sharepoint.com/sites/M365POC" -ClientId "YOUR CLIENT ID" -Thumbprint "CERT THUMP PRINT" -Tenant "contosodev.onmicrosoft.com"
Es posible que haya notado que no arroja ningún error al conectarse al sitio utilizando la ID del cliente y la impresión del certificado, sin embargo, arroja un error al obtener los detalles del sitio o el contenido de la lista.
Guión completo
#Creating Azure AD App with Certificate Thumbprint.
Register-PnPAzureADApp -ApplicationName SPSitesSelected -Tenant contosodev.onmicrosoft.com -Store CurrentUser -SharePointApplicationPermissions "Sites.Selected" -Interactive
#Connecting to SharePoint online Admin center using Global Admin Credentials
Connect-PnPOnline -Url "https://contosodev-admin.sharepoint.com" -Interactive
#Granting Access to Azure AD App for specific sites
Grant-PnPAzureADAppSitePermission -AppId 'bf8f7d56-c37f-44d6-abcb-670832e49b9c' -DisplayName 'SPSitesSelected' -Site 'https://contosodev.sharepoint.com/sites/CBADemo1' -Permissions Write
Grant-PnPAzureADAppSitePermission -AppId 'bf8f7d56-c37f-44d6-abcb-670832e49b9c' -DisplayName 'SPSitesSelected' -Site 'https://contosodev.sharepoint.com/sites/CBADemo2' -Permissions Write
#Disconnecting the previous connections
Disconnect-PnPOnline
#Validating the connection
Get-PnPConnection
#Connecting to SPO site using Azure AD App
Connect-PnPOnline -Url "https://contosodev.sharepoint.com/sites/CBADemo1" -ClientId "bf8f7d56-c37f-44d6-abcb-670832e49b9c" -Thumbprint "6A506565EABCD759C204C8517955301420A0C02D" -Tenant "contosodev.onmicrosoft.com"
#Gettting site details
Get-PnPSite
#Getting the list content
Get-PnPList
#Disconnecting from the Azure AD App connection
Disconnect-PnPOnline
#Connecting to SPO site using Azure Ad App with other site where access is not being granted.
Connect-PnPOnline -Url "https://contosodev.sharepoint.com/sites/M365POC" -ClientId "bf8f7d56-c37f-44d6-abcb-670832e49b9c" -Thumbprint "6A506565EABCD759C204C8517955301420A0C02D" -Tenant "contosodev.onmicrosoft.com"
#Get the site details
Get-PnPSite
#Get list content for site
Get-PnPList
Por lo tanto, en este artículo, hemos aprendido sobre
Referencias
Esta historia se publicó originalmente en https://www.c-sharpcorner.com/article/certificate-based-authentication-to-connect-to-sharepoint-online-sites/
1655779200
Azure AD App only authencitation is being used for authenticating to M365 services and doing some operations like read the data, upload the data or to do some backend jobs via automation scripts. Microsoft encourages to use certificate-based authentication for your applications registered in Azure AD to authenticate to the M365 or any cloud services. CBA is an extremely robust and secure mechanism for validating user’s identity.
In this article, I want to discuss about the use case that I came across recently. Previously I am using SharePoint App Only authentication which is the concept from ACS (Azure Control services) where the Site Collection can admin can create Client ID and Client Secret by appending /_layouts/appregnew.aspx in the site collection thus by using the client credentials in application. However, there are few issues using this ACS app-only access token method
More about the ACS Token based-authentication can be referred in the references section.
The good news is that in the Azure AD App, the API permissions for the SharePoint have come with new permissions called “Sites.Selected”, which will allow your Azure AD App to authenticate to multiple site collection using single Client and certificate details.
Before going to this Azure AD App only authentication using certificates, we will try to understand what is Certificate Based Authentication (aka CBA) in Azure AD. There are 2 types of CBA in Azure AD.
Previously in order to implement the CBA, ADFS services needs to be deployed between users and Azure AD. CBA with ADFS uses X.509 certificates to authenticate against azure AD.
The latest version which is Azure AD CBA doesn’t need configuration and deploying of AD FS. The users can directly interact with Azure AD and authenticate against the applications.
For more details on CBA with AD FS and Azure AD CBA you can go through the articles mentioned in the references section.
Now we will go through the steps to create Azure AD App, with API permissions “Sites. Selected” of type “Application”. Then use this Azure AD App to authenticate to multiple site collections.In order to successfully follow the article it is required to have the latest PnP Powershell version installed.
Step 1
Open the PowerShell ISE or command windows as administrator.
Step 2
Register the application by running the below PS command. Make sure the account that is running the below commands should have ‘Global Admin’ rights. Follow the prompts if the account has MFA (Multi-Factor Authentication Enabled)
Register-PnPAzureADApp -ApplicationName SPSitesSelected -Tenant contosodev.onmicrosoft.com -Store CurrentUser -SharePointApplicationPermissions "Sites.Selected" -Interactive
Step 3
On successful authentication, you will be getting the below message which says to wait for 60 seconds to check for required artifacts and start the consent flow.
Step 4
You will be asked to authenticate one more time to register the App and then to create certificate and thumbprint. Follow the prompts again
Step 5
Now you will have the consent pop up on successful authentication similar to below. It shows the App name (In this case it is SPSites Selected), and options to Accept and cancel.
You can also verify the app details by clicking on the ‘App Info’.
Step 6
After agreeing to consent by clicking on ‘Accept’ you should see following information from the command output window.
You will have following values,
You need to make note of only Client ID, Thumbprint, and the location of the Pfx and Cer files.
The above steps confirms that Azure AD application is created with required permissions which is ‘Sites.Selected’. This means the Azure AD app can be now configured to authenticate to only specific sites.
Now for granting access to Azure AD App, run the following set of commands.
Step 1
Login to SharePoint admin URL for your tenant using PnP PowerShell Module with Global Admin credentials.
Connect-PnPOnline -Url "https://contoso-admin.sharepoint.com" -Interactive
Step 2
On authentication you will be getting the following information, about the permissions on what the PnP Management shell could do.
Here you can consent on behalf of organization or leave it unchecked. If you checked ‘Consent on behalf of your organization’ no other user will be prompted for consent.
Step 3
Grant the permission to the app by running the following command. Please note that there is only 2 set of permissions you can grant to app, which is ‘Read’ or ‘Write’.
Grant-PnPAzureADAppSitePermission -AppId 'YOUR APP ID HERE' -DisplayName 'APP DISPLAY NAME HERE' -Site 'https://contosodev.sharepoint.com/sites/CBADemo1' -Permissions Write
Step 1
Validate the access to the app by connecting to sites that are granted permissions. You should see the content without any issue. In this case, disconnect from the previous PnP connections if there are any previous connections existing.
Disconnect-PnPOnline
Step 2
Validate there is no other PnP connection existing by typing the below command.
Get-PnPConnection
You should see the error says ‘The current connection holds no SharePoint context’.
Step 3
Now connect to the SharePoint site by using Azure AD App credentials.
Connect-PnPOnline -Url "https://contosodev.sharepoint.com/sites/CBADemo2" -ClientId "AZURE AD APP ID" -Thumbprint "CERT THUMP PRINT" -Tenant "YOUR TENANT DOMAIN"
Note that the App ID (Client ID) and Thumbprint values are generated at Step 6 in ‘Create Azure AD App’ section. You can also get the details from your Azure AD by logging into Azure AD Portal and check your App under ‘Enterprise Applications’.
Similarly, the tenant domain can be obtained by clicking on ‘Azure Active Directory’ from quick launch and look for ‘Primary domain’ value.
Step 4
Now check for which site the app is connected to by running below command.
Get-PnPSite
Step 5
Now get the list of all lists in this site collection by running below command.
Get-PnPList
You can run the same commands for any other site collection for which the Azure AD App needs to access.
Step 6
Validate the access to the app by connecting to sites that are not being granted access. You should see 403 forbidden error.
Connect-PnPOnline -Url "https://contosodev.sharepoint.com/sites/M365POC" -ClientId "YOUR CLIENT ID" -Thumbprint "CERT THUMP PRINT" -Tenant "contosodev.onmicrosoft.com"
You might have noticed that it is not throwing any error while connecting to the site using the Client ID and certificate thump print, however it is throwing error when getting the site details or list content.
Complete Script
#Creating Azure AD App with Certificate Thumbprint.
Register-PnPAzureADApp -ApplicationName SPSitesSelected -Tenant contosodev.onmicrosoft.com -Store CurrentUser -SharePointApplicationPermissions "Sites.Selected" -Interactive
#Connecting to SharePoint online Admin center using Global Admin Credentials
Connect-PnPOnline -Url "https://contosodev-admin.sharepoint.com" -Interactive
#Granting Access to Azure AD App for specific sites
Grant-PnPAzureADAppSitePermission -AppId 'bf8f7d56-c37f-44d6-abcb-670832e49b9c' -DisplayName 'SPSitesSelected' -Site 'https://contosodev.sharepoint.com/sites/CBADemo1' -Permissions Write
Grant-PnPAzureADAppSitePermission -AppId 'bf8f7d56-c37f-44d6-abcb-670832e49b9c' -DisplayName 'SPSitesSelected' -Site 'https://contosodev.sharepoint.com/sites/CBADemo2' -Permissions Write
#Disconnecting the previous connections
Disconnect-PnPOnline
#Validating the connection
Get-PnPConnection
#Connecting to SPO site using Azure AD App
Connect-PnPOnline -Url "https://contosodev.sharepoint.com/sites/CBADemo1" -ClientId "bf8f7d56-c37f-44d6-abcb-670832e49b9c" -Thumbprint "6A506565EABCD759C204C8517955301420A0C02D" -Tenant "contosodev.onmicrosoft.com"
#Gettting site details
Get-PnPSite
#Getting the list content
Get-PnPList
#Disconnecting from the Azure AD App connection
Disconnect-PnPOnline
#Connecting to SPO site using Azure Ad App with other site where access is not being granted.
Connect-PnPOnline -Url "https://contosodev.sharepoint.com/sites/M365POC" -ClientId "bf8f7d56-c37f-44d6-abcb-670832e49b9c" -Thumbprint "6A506565EABCD759C204C8517955301420A0C02D" -Tenant "contosodev.onmicrosoft.com"
#Get the site details
Get-PnPSite
#Get list content for site
Get-PnPList
Thus, in this article, we have learned about
References
This story was originally published at https://www.c-sharpcorner.com/article/certificate-based-authentication-to-connect-to-sharepoint-online-sites/
1655723100
Azure AD Appのみの認証は、M365サービスへの認証と、データの読み取り、データのアップロード、自動化スクリプトを介したバックエンドジョブの実行などの操作に使用されています。Microsoftは、Azure ADに登録されているアプリケーションに証明書ベースの認証を使用して、M365または任意のクラウドサービスに対して認証することをお勧めします。CBAは、ユーザーのIDを検証するための非常に堅牢で安全なメカニズムです。
この記事では、私が最近遭遇したユースケースについて説明したいと思います。以前は、SharePoint App Only認証を使用しています。これはACS(Azure Controlサービス)の概念であり、サイトコレクションの管理者はサイトコレクションに/_layouts/appregnew.aspxを追加することで、クライアントIDとクライアントシークレットを作成できます。アプリケーションで。ただし、このACSアプリのみのアクセストークン方式を使用する場合の問題はほとんどありません。
ACSトークンベースの認証の詳細については、参照セクションを参照してください。
幸いなことに、Azure ADアプリでは、SharePointのAPIアクセス許可に「Sites.Selected」という新しいアクセス許可が追加されました。これにより、AzureADアプリは単一のクライアントと証明書の詳細を使用して複数のサイトコレクションに対して認証できます。
証明書を使用したこのAzureADアプリのみの認証に進む前に、Azure ADの証明書ベースの認証(別名CBA)とは何かを理解しようとします。AzureADには2種類のCBAがあります。
以前は、CBAを実装するために、ADFSサービスをユーザーとAzureADの間にデプロイする必要がありました。ADFSを使用するCBAは、X.509証明書を使用してAzureADに対して認証します。
Azure AD CBAである最新バージョンでは、ADFSの構成と展開は必要ありません。ユーザーはAzureADと直接対話し、アプリケーションに対して認証できます。
ADFSおよびAzureADCBAを使用したCBAの詳細については、参照セクションに記載されている記事を参照してください。
次に、APIアクセス許可「サイト」を使用してAzureADアプリを作成する手順を実行します。タイプ「アプリケーション」の「選択済み」。次に、このAzure ADアプリを使用して、複数のサイトコレクションに対して認証します。記事を正しく実行するには、最新のPnPPowershellバージョンがインストールされている必要があります。
ステップ1
管理者としてPowerShellISEまたはコマンドウィンドウを開きます。
ステップ2
以下のPSコマンドを実行してアプリケーションを登録します。以下のコマンドを実行しているアカウントに「グローバル管理者」権限があることを確認してください。アカウントでMFA(Multi-Factor Authentication Enabled)がある場合は、プロンプトに従います
Register-PnPAzureADApp -ApplicationName SPSitesSelected -Tenant contosodev.onmicrosoft.com -Store CurrentUser -SharePointApplicationPermissions "Sites.Selected" -Interactive
ステップ3
認証が成功すると、必要なアーティファクトをチェックして同意フローを開始するために60秒待つことを示す以下のメッセージが表示されます。
ステップ4
アプリを登録してから、証明書と指紋を作成するために、もう一度認証するように求められます。プロンプトに従います
ステップ5
これで、以下のように認証が成功すると同意がポップアップ表示されます。アプリ名(この場合はSPSites Selected)と、承認およびキャンセルするオプションが表示されます。
[アプリ情報]をクリックして、アプリの詳細を確認することもできます。
ステップ6
[同意する]をクリックして同意することに同意すると、コマンド出力ウィンドウから次の情報が表示されます。
次の値があります、
クライアントID、指紋、およびPfxファイルとCerファイルの場所のみをメモする必要があります。
上記の手順は、AzureADアプリケーションが「Sites.Selected」である必要なアクセス許可で作成されていることを確認します。これは、特定のサイトに対してのみ認証するようにAzureADアプリを構成できるようになったことを意味します。
ここで、Azure ADアプリへのアクセスを許可するには、次の一連のコマンドを実行します。
ステップ1
グローバル管理者の資格情報を持つPnPPowerShellモジュールを使用して、テナントのSharePoint管理者URLにログインします。
Connect-PnPOnline -Url "https://contoso-admin.sharepoint.com" -Interactive
ステップ2
認証時に、PnP管理シェルが実行できる権限に関する次の情報を取得します。
ここでは、組織に代わって同意するか、チェックを外したままにすることができます。[組織を代表して同意する]をオンにした場合、他のユーザーは同意を求められません。
ステップ3
次のコマンドを実行して、アプリに権限を付与します。アプリに付与できる権限は、「読み取り」または「書き込み」の2セットのみであることに注意してください。
Grant-PnPAzureADAppSitePermission -AppId 'YOUR APP ID HERE' -DisplayName 'APP DISPLAY NAME HERE' -Site 'https://contosodev.sharepoint.com/sites/CBADemo1' -Permissions Write
ステップ1
権限が付与されているサイトに接続して、アプリへのアクセスを検証します。問題なくコンテンツが表示されるはずです。この場合、以前の接続が存在する場合は、以前のPnP接続から切断します。
Disconnect-PnPOnline
ステップ2
以下のコマンドを入力して、他にPnP接続が存在しないことを確認します。
Get-PnPConnection
「現在の接続にはSharePointコンテキストがありません」というエラーが表示されるはずです。
ステップ3
次に、AzureADアプリのクレデンシャルを使用してSharePointサイトに接続します。
Connect-PnPOnline -Url "https://contosodev.sharepoint.com/sites/CBADemo2" -ClientId "AZURE AD APP ID" -Thumbprint "CERT THUMP PRINT" -Tenant "YOUR TENANT DOMAIN"
アプリID(クライアントID)とフィンガープリントの値は、[AzureADアプリの作成]セクションの手順6で生成されることに注意してください。Azure ADポータルにログインし、[エンタープライズアプリケーション]でアプリを確認することで、AzureADから詳細を取得することもできます。
同様に、テナントドメインは、クイック起動から[Azure Active Directory]をクリックして、[プライマリドメイン]の値を探すことで取得できます。
ステップ4
次に、以下のコマンドを実行して、アプリが接続されているサイトを確認します。
Get-PnPSite
ステップ5
次に、以下のコマンドを実行して、このサイトコレクション内のすべてのリストのリストを取得します。
Get-PnPList
AzureADアプリがアクセスする必要のある他のサイトコレクションに対しても同じコマンドを実行できます。
ステップ6
アクセスが許可されていないサイトに接続して、アプリへのアクセスを検証します。403forbiddenエラーが表示されるはずです。
Connect-PnPOnline -Url "https://contosodev.sharepoint.com/sites/M365POC" -ClientId "YOUR CLIENT ID" -Thumbprint "CERT THUMP PRINT" -Tenant "contosodev.onmicrosoft.com"
クライアントIDと証明書のサンププリントを使用してサイトに接続しているときにエラーがスローされないことに気付いたかもしれませんが、サイトの詳細またはリストのコンテンツを取得するときにエラーがスローされます。
完全なスクリプト
#Creating Azure AD App with Certificate Thumbprint.
Register-PnPAzureADApp -ApplicationName SPSitesSelected -Tenant contosodev.onmicrosoft.com -Store CurrentUser -SharePointApplicationPermissions "Sites.Selected" -Interactive
#Connecting to SharePoint online Admin center using Global Admin Credentials
Connect-PnPOnline -Url "https://contosodev-admin.sharepoint.com" -Interactive
#Granting Access to Azure AD App for specific sites
Grant-PnPAzureADAppSitePermission -AppId 'bf8f7d56-c37f-44d6-abcb-670832e49b9c' -DisplayName 'SPSitesSelected' -Site 'https://contosodev.sharepoint.com/sites/CBADemo1' -Permissions Write
Grant-PnPAzureADAppSitePermission -AppId 'bf8f7d56-c37f-44d6-abcb-670832e49b9c' -DisplayName 'SPSitesSelected' -Site 'https://contosodev.sharepoint.com/sites/CBADemo2' -Permissions Write
#Disconnecting the previous connections
Disconnect-PnPOnline
#Validating the connection
Get-PnPConnection
#Connecting to SPO site using Azure AD App
Connect-PnPOnline -Url "https://contosodev.sharepoint.com/sites/CBADemo1" -ClientId "bf8f7d56-c37f-44d6-abcb-670832e49b9c" -Thumbprint "6A506565EABCD759C204C8517955301420A0C02D" -Tenant "contosodev.onmicrosoft.com"
#Gettting site details
Get-PnPSite
#Getting the list content
Get-PnPList
#Disconnecting from the Azure AD App connection
Disconnect-PnPOnline
#Connecting to SPO site using Azure Ad App with other site where access is not being granted.
Connect-PnPOnline -Url "https://contosodev.sharepoint.com/sites/M365POC" -ClientId "bf8f7d56-c37f-44d6-abcb-670832e49b9c" -Thumbprint "6A506565EABCD759C204C8517955301420A0C02D" -Tenant "contosodev.onmicrosoft.com"
#Get the site details
Get-PnPSite
#Get list content for site
Get-PnPList
したがって、この記事では、
参考文献