Add new attachment

Only authorized users are allowed to upload new attachments.

List of attachments

Kind Attachment Name Size Version Date Modified Author Change note
png
app_inv_permission.png 64.3 kB 1 05-Dec-2023 05:32 krivacsz
png
app_permission_admin_consent.p... 85.3 kB 1 05-Dec-2023 05:32 krivacsz
png
app_permission_vfs_item.png 111.7 kB 3 01-May-2025 02:48 krivacsz
png
app_reg_new.png 57.5 kB 1 05-Dec-2023 05:32 krivacsz
png
app_reg_new_success.png 58.7 kB 1 05-Dec-2023 05:32 krivacsz
png
client_id.png 93.9 kB 1 05-Dec-2023 05:32 krivacsz
png
ms_graph_app_permission.png 85.0 kB 1 01-May-2025 02:20 krivacsz
png
new_registration.png 83.3 kB 3 05-Dec-2023 05:32 krivacsz
png
new_secret.png 81.9 kB 2 05-Dec-2023 05:32 krivacsz
png
permission_final.png 165.2 kB 1 05-Dec-2023 05:32 krivacsz
png
permission_microsoft_graph.png 182.9 kB 1 05-Dec-2023 05:32 krivacsz
png
register_app.png 230.6 kB 1 05-Dec-2023 05:32 krivacsz
png
remote_item_done.png 92.4 kB 1 05-Dec-2023 05:32 krivacsz
png
remote_item_settings.png 107.4 kB 2 01-May-2025 05:18 krivacsz
png
remote_item_sharepoint_specifi... 22.8 kB 1 05-Dec-2023 05:32 krivacsz
png
secret_value.png 42.7 kB 1 05-Dec-2023 05:32 krivacsz
png
sharepoint2_vfs.png 165.8 kB 1 05-Dec-2023 05:32 krivacsz

This page (revision-159) was last changed on 01-May-2025 05:39 by krivacsz

This page was created on 05-Dec-2023 05:32 by krivacsz

Only authorized users are allowed to rename pages.

Only authorized users are allowed to delete pages.

Difference between version and

At line 2 removed one line
__Remote item name:__ Sharepoint\\
At line 4 changed 2 lines
__!!!Constraint:__ Microsoft Graph REST API does not support stream upload. In order to integrate with CrushFTP the files are temporarily stored as local files (CrushFTP install folder/sharepoint/) during the upload.\\
__Proxy__: If your server's internet connection uses a proxy server. You need to whitelist domains: login.microsoftonline.com, graph.microsoft.com\\
More info about Microsft Graph REST API: [https://learn.microsoft.com/en-us/graph/api/resources/onedrive?view=graph-rest-1.0}]\\
At line 7 changed one line
Go to the Microsoft Azure portal: [https://azure.microsoft.com/en-us/features/azure-portal]/\\
Remote item name: __Sharepoint__\\
At line 9 changed one line
__Application registration: __Go to the App registrations and click on New registration:\\
__!!! Proxy Configuration:__ If your server accesses the internet through a proxy, make sure to whitelist the following domains to allow authentication and Microsoft Graph API access:\\
• login.microsoftonline.com\\
• graph.microsoft.com\\
At line 11 changed one line
[attachments|new_registration.png]\\
Open the Microsoft Azure Portal: [https://azure.microsoft.com/en-us/features/azure-portal]/\\
At line 13 changed one line
Name it. Select the Multitenant and personal Microsoft accounts type. The redirect URL must end with register_microsoft_graph_api/. Then click on register.\\
__Application registration:__ Navigate to App registrations in the Azure Portal. Click on "New registration" to create a new application.\\
At line 15 changed one line
[attachments|register_app.png]\\
[attachments|new_registration.png]\\
At line 17 changed one line
Under the redirect URL enable the __Access Token__ to be issued by the authorization endpoint:\\
The Redirect URL must end with __"register_microsoft_graph_api/"__.\\
At line 19 changed one line
[attachments|SMTP Microsoft Graph XOAUTH 2 Integration/enable_access_token.png]\\
{{{
http://localhost:9090/register_microsoft_graph_api/
}}}
or
{{{
https://your.crushftp.domain.com/register_microsoft_graph_api/
}}}
At line 21 changed one line
__API permission:__ You must also provide permission for the Microsoft Graph. Go to the Api permission. Click on Add Permission, and select Microsoft Graph.
__Configure API permission:__ You must also grant permissions for Microsoft Graph. Go to the __API Permissions__ section, click Add a permission, and select __Microsoft Graph__. To learn more about Microsoft Graph permissions—including the difference between __Application__ and __Delegated__ permissions—refer to the official documentation: [https://learn.microsoft.com/en-us/graph/permissions-overview?tabs=http]\\
At line 25 changed one line
It permits a Server to __server-to-server__ authentication. Add __Files.REadWriteAll__ permission. And Grant Admin consent on the added permission.\\
Application permissions are used when an application runs without a signed-in user, such as in server-to-server connections.\\
At line 27 changed one line
[OneDriveSetup/ms_graph_app_permission.png]\\
__a.) Files.ReadWrite.All__: Grants the application read and write access to all files the signed-in user can access, across all user drives and document libraries (including SharePoint sites and OneDrive for Business).\\
This includes the ability to:\\
• List, read, update, create, and delete files and folders\\
• Upload/download documents\\
• Modify file metadata\\
At line 29 changed one line
__Client id : __ You can find it at Azure portal -> App Registration -> Overview:\\
__Configure API Permission__: Navigate to API Permissions. Click on Add a permission button. Select __Microsoft Graph__. Then select __Application Permission__. Search for __Files__ and check the flag Files.ReadWrite.All permission.\\
At line 45 added 23 lines
[SharePoint Integration/ms_graph_app_permission.png]\\
\\
__b.) Sites.FullControl.All__: Grants the application full control over all site collections in the tenant without user interaction. ( More info -> [https://learn.microsoft.com/en-us/graph/permissions-reference#sites-permissions])\\
\\
This permission allows the app to:\\
• Read and write all files in all SharePoint Online site collections\\
• Manage lists, document libraries, subsites, and site permissions\\
• Perform site-level actions across the entire tenant\\
\\
__Configure API Permission__: Navigate to API Permissions. Click on Add a permission button. Select __Microsoft Graph__. Then select __Application Permission__. Search for __Sites__ and check the flag Sites.FullControl.All permission.\\
\\
__c.) Sites.Selected__: Grants the application no access to SharePoint sites by default. However, you can explicitly grant access to specific sites by using the Microsoft Graph API. More information is available at the following link: [Managing SharePoint Site Access for Applications Using Sites.Selected Permission|CrushTaskExample19].\\
\\
__Configure API Permission__: Navigate to API Permissions. Click on Add a permission button. Select __Microsoft Graph__. Then select __Application Permission__. Search for __Sites__ and check the flag Sites.Selected permission.\\
\\
[CrushTaskExample19/site_selected_microsoft_graph.png]\\
\\
Grant __Admin consent__ for the newly added permission.\\
\\
[attachments|app_permission_admin_consent.png]\\
\\
__Client id__: See at App Registration -> Overview -> Application (client) ID\\
\\
At line 33 changed one line
__Secret key:__ A new client secret needs to be created as well. Go to the "Certificate & secrets" and generate a new secret key. Click on New client secret.\\
__Secret key__: A new client secret must be created. Go to Certificates & secrets, and generate a new client secret by clicking on New client secret. Ensure you copy over the __value__ immediately!\\
At line 39 changed one line
__Authentication related settings:__\\
__Sharepoint VFS item configuration:__\\
At line 41 changed 6 lines
__User name:__ Itt must start with "app_permission", then the Client ID separated with tilda.\\
{{{
app_permission~<<Client ID>>
}}}\\
__Password:__ Client Secret.\\
__Tennant:__ The tenant id.\\
Select the __Application Permission__ radio button, then click __Application Permission__. Enter the __Client ID__, __Client Secret__, and __Tenant ID__, then click OK. This will automatically configure the username and password in the VFS item settings. After that, proceed with the SharePoint site-specific configuration.\\
At line 48 changed one line
!!!1.2 Delegated permission:\\
__Tennant:__ See at App Registration -> Overview -> Directory (tenant) ID. Based on the App Registration Account type it can be an ID, common, or consumer.\\
Provide the SharePoint-specific settings. See under the __1.3.Sharepoint-specific settings.__ ( Link: [https://www.crushftp.com/crush10wiki/Wiki.jsp?page=SharePoint%20Integration#section-SharePoint+Integration-1.3.SharepointSpecificSettings]\\
At line 83 added 28 lines
[attachments|app_permission_vfs_item.png]\\
\\
!!!1.2 Delegated Permission:\\
\\
Delegated permissions are used when an application makes API calls as the signed-in user. The app is delegated the user’s permissions and can only access resources that the user is authorized to access.\\
\\
__a.) Files.ReadWrite.All__: Grants the application read and write access to all files the signed-in user can access, across all user drives and document libraries (including SharePoint sites and OneDrive for Business).\\
This includes the ability to:\\
• List, read, update, create, and delete files and folders\\
• Upload/download documents\\
• Modify file metadata\\
\\
__Configure API Permission__: Navigate to API Permissions. Click on Add a permission button. Select __Microsoft Graph__. Then select __Delegated Permission__. Search for __Files__ and check the flag Files.ReadWrite.All permission.\\
\\
__b.) Sites.FullControl.All__: Grants the application full control over all site collections in the tenant without user interaction. ( More info -> [https://learn.microsoft.com/en-us/graph/permissions-reference#sites-permissions])\\
\\
This permission allows the app to:\\
• Read and write all files in all SharePoint Online site collections\\
• Manage lists, document libraries, subsites, and site permissions\\
• Perform site-level actions across the entire tenant\\
\\
__Configure API Permission__: Navigate to API Permissions. Click on Add a permission button. Select __Microsoft Graph__. Then select __Delegated Permission__. Search for __Sites__ and check the flag Sites.FullControl.All permission.\\
\\
__c.) Sites.Selected__: Grants the application no access to SharePoint sites by default. However, you can explicitly grant access to specific sites by using the Microsoft Graph API. More information is available at the following link:[Managing SharePoint Site Access for Applications Using Sites.Selected Permission|CrushTaskExample19].\\
\\
__Configure API Permission__: Navigate to API Permissions. Click on Add a permission button. Select __Microsoft Graph__. Then select __Delegated Permission__. Search for __Sites__ and check the flag Sites.Selected permission.\\
\\
\\
At line 114 added 4 lines
Grant __Admin consent__ for the newly added permission.\\
\\
[attachments|app_permission_admin_consent.png]\\
\\
At line 65 changed one line
__!!! The CrushFTP admin page URL must match the redirect URL.__ In our example : http://localhost:9090\\
__!!! The CrushFTP admin page URL must match the redirect URL.__ In our example, it was: http://localhost:9090 or https://your.crushftp.domain.com/register_microsoft_graph_api/\\
At line 75 changed one line
!!!1.3.Sharepoint specific settings:__\\
!!!1.3.Sharepoint-specific settings:__\\
At line 80 changed one line
__Site Path__: The path of the SharePoint site. It should start and end with slash.\\
__Site Path__: The path of the SharePoint site. It should start and end with a slash.\\
At line 92 changed one line
__!!!Constraint:__ On newer Sharepoint (after 2019) Grant App permission is disabled by default. To enable Custom Application APP Authentication run the following PowerShell commands:\\
__!!!Constraint:__ On newer Sharepoint (after 2019) Grant App permission as it is disabled by default. To enable Custom Application APP Authentication run the following PowerShell commands:\\
At line 113 changed one line
__Advantage(Compared with MSGraph API)__: Stream upload supported. There is no temporarily stored local file during the upload.\\
__Advantage(Compared with MSGraph API Delegated Permission)__: Stream upload supported. There is no temporarily stored local file during the upload.\\
Version Date Modified Size Author Changes ... Change note
159 01-May-2025 05:39 13.065 kB krivacsz to previous
158 01-May-2025 05:39 13.069 kB krivacsz to previous | to last
157 01-May-2025 05:38 13.069 kB krivacsz to previous | to last
156 01-May-2025 05:31 12.975 kB krivacsz to previous | to last
155 01-May-2025 05:28 12.952 kB krivacsz to previous | to last
154 01-May-2025 05:25 12.56 kB krivacsz to previous | to last
153 01-May-2025 05:23 12.144 kB krivacsz to previous | to last
152 01-May-2025 05:22 12.186 kB krivacsz to previous | to last
151 01-May-2025 05:03 12.259 kB krivacsz to previous | to last
150 01-May-2025 04:43 12.272 kB krivacsz to previous | to last
149 01-May-2025 04:39 12.155 kB krivacsz to previous | to last
148 01-May-2025 04:37 12.082 kB krivacsz to previous | to last
147 01-May-2025 04:35 12.051 kB krivacsz to previous | to last
146 01-May-2025 02:59 10.159 kB krivacsz to previous | to last
145 01-May-2025 02:39 10.001 kB krivacsz to previous | to last
144 01-May-2025 02:37 9.961 kB krivacsz to previous | to last
143 01-May-2025 02:31 9.965 kB krivacsz to previous | to last
142 01-May-2025 02:28 9.833 kB krivacsz to previous | to last
141 01-May-2025 02:22 9.623 kB krivacsz to previous | to last
« This page (revision-159) was last changed on 01-May-2025 05:39 by krivacsz
G’day (anonymous guest)
CrushFTP11 | What's New
JSPWiki