같은 힌트
9465 단어 phpprogramminglaravelbeginners
Escaped text : {{ $text }} // with HTML tag
non-escaped text : {!! $text !!}
당신은 또한 어떻게 사용하는지 배울 수 있습니다.env 예시 및 그 차이
https://blog.quickadminpanel.com/how-to-use-laravel-env-example-files/
$request-all () 를 사용하는 위험은 필드를 선별하지 않았기 때문에 브라우저 컨트롤러로 이동해서 변경할 수 있습니다
너 이거 써도 돼.
$request->validated()
$request->only()
$request->except()
$file = $request->file('avatar');
$name = $file->hashName(); // Generate a unique, random name...
$extension = $file->extension(); // Determine the file's extension based on the file's MIME type...
로컬 개발의 경우 APP DEBUG 환경 변수를 true로 설정해야 합니다.프로덕션 환경에서 이 값은 항상 false여야 합니다.이 변수가 생산에서true로 설정되면 프로그램의 최종 사용자에게 민감한 설정 값을 노출할 수 있습니다.
https://laravel.com/docs/8.x/configuration#debug-mode
<form method="POST" action="/profile">
@csrf
</form>
Requests Route:::get()을 사용하여 데이터를 변경할 내용을 가져오지 마십시오.https://laravel.com/docs/8.x/csrf
https://laravel.com/docs/8.x/routing#rate-limiting
public function edit(Task $task)
{
if($task->created_by_id != auth()->id()){
abort(403);
}
// edit
}
2. 정책https://laravel.com/docs/8.x/authorization#creating-policies
우리는 정책을 제정한다
php artisan make:policy TaskPolicy --model=Task
정책에서 임무 완수를 확보하다public function view(User $user, Task $task)
{
return $task->created_by_id == $user->id
}
편집 기능에 authorize를 입력하여 사용자가 편집 중인지 확인합니다.public function edit(Task $task)
{
$this->authorize('view', $task);
// edit
}
3-Laravel 역할 및 권한 사용->selectRaw('price * ? as price_with_tax', [1.0825])
만약 네가 깊이 파헤치고 싶다면, 여기에 약간의 출처가 있다.https://laravel.com/docs/8.x/queries#raw-expressions
https://developer.okta.com/blog/2020/06/15/sql-injection-in-php
https://en.wikipedia.org/wiki/SQL_injection
html 사용을 피하기 위해 이 편집기에 @ckeditor/ckeditor5 markdown gfm 확장자를 설치합니다
https://ckeditor.com/docs/ckeditor5/latest/features/markdown.html
마지막으로 어떤 이유로든 html을 처리하려면 가방https://github.com/mewebstudio/Purifier이 있으면 모든 악성코드를 삭제할 수 있습니다.
이 기능https://laravel.com/docs/8.x/eloquent#global-scopes을 사용하십시오. 미래에 새로운 개발자가 프로젝트에 가입할 수 있고 사용자만 보일 수 있기 때문입니다. 예를 들어user:all (). 숨겨진 전역 역할 영역이 일부 데이터를 필터할 수 있다는 것을 모르고 로그인한 사용자가 사용하는 것이 좋습니다.
->where('user_id', auth()->id())
2-기본적으로 즉시 로드이 기능 주의 https://laravel.com/docs/8.x/eloquent-relationships#eager-loading-by-default
프로젝트의 미래 개발자를 생각해 보세요. 모든 검색어에 작가를 불러옵니다. 비록 그들이 이렇게 할 필요가 없을지라도.
3. 전역 중간부품
이 기능 https://laravel.com/docs/9.x/middleware#global-middleware 을 조심해서 사용하십시오. 장래에 이 중간부품을 필요로 하지 않는 프로그램에 나타날 수 있고 개발자가 이 기능을 사용하고 있는지 모르기 때문입니다.
4-프레임 기본값 덮어쓰기
이 기능을 주의 깊게 사용하십시오.프로젝트에 가입할 개발자를 생각해 보세요. delete라는 함수가 있습니다. 이 함수에는 서로 다른 테이블에서 삭제하고 함수 이름과 무관한 지령이 포함되어 있습니다. 따라서 laravel 프레임워크에서 알고 있는 기능, 함수, 속성을 덮어쓰면 미래의 개발자에게 불리할 수 있습니다.
나는 네가 이 코드를 좋아하길 바란다. 마치 내가 어떤 정보를 알고 너와 공유하는 것을 좋아하는 것처럼.
Reference
이 문제에 관하여(같은 힌트), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/morcosgad/laravel-security-same-tips-2o0k텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)