Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Importante
El conector administrado de Microsoft SharePoint está en beta.
En esta página se describe cómo configurar la autenticación de actualización manual de tokens para la ingesta de Microsoft SharePoint en Azure Databricks.
Paso 1: Obtener el identificador del sitio de SharePoint
- Visite el sitio de SharePoint deseado en el explorador.
- Anexe
/_api/site/ida la dirección URL. - Escriba Entrar.
Paso 2: Conseguir nombres de unidad de disco de SharePoint (opcional)
Si desea importar todas las unidades y documentos de su sitio de SharePoint, puede omitir este paso. Sin embargo, si solo desea incorporar un subconjunto de las unidades, debe recopilar sus nombres.
Puede encontrar los nombres de unidad en el menú izquierdo. Hay una unidad predeterminada denominada Documentos en cada sitio. Es posible que su organización tenga unidades adicionales. Por ejemplo, las unidades de la captura de pantalla siguiente incluyen doclib1, subsite1doclib1, y mucho más.
Es posible que algunas unidades estén ocultas de la lista. El creador de la unidad puede configurarlo en la configuración de la unidad. En este caso, las unidades ocultas pueden estar visibles en la sección Contenido del sitio .
Paso 3: Crear un cliente en microsoft Entra ID
Este paso crea un cliente que puede acceder a los archivos de SharePoint.
En Microsoft Azure Portal (
portal.azure.com), haga clic en Id. de Microsoft Entra. Es posible que usted tenga que buscar "Microsoft Entra ID".
En el menú de la izquierda, en la sección Administrar , haga clic en Registros de aplicaciones.
Haga clic en Nuevo registro.
En el formulario Registrar una solicitud :
Si desea que otros inquilinos accedan a esta aplicación.
URL de redirección que desea usar para obtener el código de autenticación. Especifique una de las opciones siguientes:
- La dirección URL de redireccionamiento de su propio servidor
-
https://127.0.0.1(Incluso si no tiene un servidor que se ejecuta enhttps://127.0.0.1, la aplicación intenta redirigir a esa página. El código está en la dirección URL resultante y la dirección URL tiene el formato siguiente:https://127.0.0.1:5000/oauth2redirect?code=<code>)
Se le redirigirá a la página de detalles de la aplicación.
Anote los siguientes valores:
- Id. de aplicación (cliente)
- Id. de directorio (inquilino)
Haga clic en Credenciales de cliente: agregue un certificado o un secreto.
Haga clic en + Nuevo secreto de cliente.
Agrega una descripción.
Haga clic en Agregar.
Se muestra la lista actualizada de secretos de cliente.
Copie el valor del secreto de cliente y almacénelo de forma segura. Después de salir de la página, no puede acceder al secreto de cliente.
Paso 4: Conceder al cliente acceso a archivos de SharePoint
El cliente requiere los dos permisos siguientes para acceder a los archivos de SharePoint:
sites.read.alloffline_access
Estos proporcionan al cliente acceso a todos los archivos de todos los sitios a los que tiene acceso. Si está familiarizado con esto, haga lo siguiente:
Ejecute el siguiente código de Python en un nuevo cuaderno. Modifique el
tenant_id, elclient_idy elredirect_url.import requests # This is the application (client) id (obtained from the App Registration page) client_id = "" # This is the tenant id (obtained from the App Registration page) tenant_id = "" # A redirect URL is used in OAuth to redirect users to an # application after they grant permission to access their account. # In this setup, the authentication code is sent to this server. redirect_url = "" # ================= Do not edit code below this line. ================== # Authorization endpoint URL authorization_url = f"https://login.microsoftonline.com/{tenant_id}/oauth2/v2.0/authorize" scopes = ["Sites.Read.All"] scope = " ".join(["https://graph.microsoft.com/{}".format(s) for s in scopes]) scope += ("&offline_access") # Construct the authorization request URL. auth_params = { "client_id": client_id, "redirect_uri": redirect_url, "response_type": "code", "scope": scope } auth_url = authorization_url + "?" + "&".join([f"{key}={value}" for key, value in auth_params.items()]) print(auth_url)La salida es una dirección URL.
En el explorador, visite la dirección URL desde la salida del código.
Inicie sesión con sus credenciales de Microsoft 365.
En el cuadro de diálogo Permisos solicitados , revise los permisos solicitados. Confirme que incluyen
sites.read.allyoffline_accessy que usted se sienta cómodo concederlos.Confirme que el identificador de correo electrónico de la parte superior de la página coincide con el correo electrónico que usa para acceder a los datos de SharePoint.
Confirme que el nombre del cliente coincide con las credenciales del paso anterior.
Haga clic en Aceptar.
Se le redirigirá a la dirección URL de redireccionamiento que especificó. También debe recibir un código de autenticación.
Anote el código de autenticación.
Si no ve el aviso Permisos requeridos, anexe
&prompt=consenta la URL.
Paso 5: Obtención del token de actualización
Este paso captura el token de actualización para completar la autorización.
Pegue el siguiente código de Python en una nueva celda del cuaderno del paso anterior. Modifique el
tenant_id, elclient_idy elredirect_url.# Use the authentication code to get the refresh token. The code contains the characters &session_state=<string> at the end. Remove these characters and define the modified string as code: code = "" # This is the client secret (obtained from the Credentials and Secrets page) client_secret = "" # ================= Do not edit code below this line. ================== token_url = f"https://login.microsoftonline.com/{tenant_id}/oauth2/v2.0/token" # Request parameters token_params = { "client_id": client_id, "client_secret": client_secret, "code": code, "grant_type": "authorization_code", "redirect_uri": redirect_url, "scope": "profile openid email https://graph.microsoft.com/Sites.Read.All offline_access" } # Send POST request to token endpoint response = requests.post(token_url, data=token_params) # Handle response if response.status_code == 200: token_data = response.json() refresh_token = token_data.get("refresh_token") print("Refresh Token:", refresh_token) else: print("Error:", response.status_code, response.text)
Pasos siguientes
- Cree una conexión para almacenar los detalles de autenticación que ha obtenido.
- Cree una canalización de ingesta.