Passer au contenu

Comment désactiver la fonction de téléchargement dans l'interface utilisateur de Jupyter dans SageMaker AI ?

Lecture de 2 minute(s)
0

Je souhaite désactiver la fonction de téléchargement dans l'interface utilisateur de Jupyter dans Amazon SageMaker AI.

Résolution

Pour désactiver la fonction de téléchargement dans les blocs-notes Jupyter hébergés par SageMaker AI, créez un script de configuration du cycle de vie pour votre type de ressource cible. Dans la section Scripts, saisissez l'un des exemples de code suivants.

Instance de bloc-notes SageMaker AI :

cat <<END >>/home/ec2-user/.jupyter/handlers.py
from tornado import web
from notebook.base.handlers import IPythonHandler

class ForbidFilesHandler(IPythonHandler):
  @web.authenticated
  def head(self, path):
    self.log.info("HEAD: File download forbidden.")
    raise web.HTTPError(403)

  @web.authenticated
  def get(self, path, include_body=True):
    self.log.info("GET: File download forbidden.")
    raise web.HTTPError(403)

END

cat <<END >>/home/ec2-user/.jupyter/jupyter_notebook_config.py
import os, sys
sys.path.append('/home/ec2-user/.jupyter/')
import handlers
c.ContentsManager.files_handler_class = 'handlers.ForbidFilesHandler'
c.ContentsManager.files_handler_params = {}

END

reboot

Remarque : Pour les instances de bloc-notes SageMaker AI, saisissez votre script dans l'éditeur Start Notebook.

SageMaker AI Studio Classic :

__conda_setup="$('/opt/conda/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
    eval "$__conda_setup"
else
    if [ -f "/opt/conda/etc/profile.d/conda.sh" ]; then
        . "/opt/conda/etc/profile.d/conda.sh"
    else
        export PATH="/opt/conda/bin:$PATH"
    fi
fi
unset __conda_setup

conda activate studio
jupyter labextension disable @jupyterlab/docmanager-extension:download
jupyter labextension disable @jupyterlab/filebrowser-extension:download
restart-jupyter-server

Remarque : Lorsque vous ajoutez le script, sélectionnez JupyterServer App.

Espace JupyterLab de SageMaker AI Studio :

jupyter labextension disable @jupyterlab/docmanager-extension:download
jupyter labextension disable @jupyterlab/filebrowser-extension:download

Après avoir créé la configuration, associez la configuration du cycle de vie à votre ressource. Puis, lancez votre ressource cible.

Informations connexes

Personnalisation d'une instance de bloc-notes SageMaker AI à l'aide d'un script LCC

AWS OFFICIELA mis à jour il y a un an