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