Pro ASP.NET Core Identity


Book Description

Learn how to get the most out of ASP.NET Core Identity. ASP.NET Core Identity provides authentication and user management for ASP.NET Core applications. In the world of ASP.NET development, Identity is a complex framework in its own right, with support for a wide range of features, including authenticating users with services provided by Google, Facebook, and Twitter. Best-selling author Adam Freeman teaches developers common authentication and user management scenarios and explains how they are implemented in applications. Each topic, from configuring identity to authenticators and recovery codes, is clearly and concisely presented. And in true Freeman style, each chapter is packed with the essential details you need to be effective. The book takes a deep dive into ASP.NET Core Identity and explains how the most important and useful features work, from the built-in features that can be used for simple applications, through to deep customizations for advanced projects. Structured in two complementary parts, Part I covers how to apply ASP.NET Core Identity to an ASP.NET Core project. You will learn how to set up and configure Identity, how to use the built-in Identity UI package to manage user accounts, and how to use the API to create custom workflows. In Part II, you will learn how the features in Part I are implemented, customized, and more. What You Will Learn Gain a solid understanding of how Identity provides authentication and authorization for ASP.NET Core applications Configure ASP.NET Core Identity for common application scenarios, including self-service registration, user management, and authentication with services provided by popular social media platforms Create robust and reliable user management tools Understand how Identity works in detail and best practices for using it in your projects Construct custom implementations of the interfaces that meet the needs of advanced ASP.NET Core projects This book is for developers with advanced knowledge of ASP.NET Core who are introducing Identity into their projects. Prior experience and knowledge of C#, ASP.NET Core is required, along with a basic understanding of authentication and authorization concepts. Adam Freeman is an experienced IT professional who has held senior positions in a range of companies, most recently serving as chief technology officer and chief operating officer of a global bank. Now retired, he spends his time writing and long-distance running.




ASP.NET Core Security


Book Description

ASP.NET Core Security teaches you the skills and countermeasures you need to keep your ASP.NET Core apps secure from the most common web application attacks. With this collection of practical techniques, you will be able to anticipate risks and introduce practices like testing as regular security checkups. You’ll be fascinated as the author explores real-world security breaches, including rogue Firefox extensions and Adobe password thefts. The examples present universal security best practices with a sharp focus on the unique needs of ASP.NET Core applications.




Advanced ASP.NET Core 3 Security


Book Description

Incorporate best practices with ASP.NET Core security. This book includes security-related features available in the framework, and security topics rarely covered elsewhere. It digs deep into the ASP.NET Core 3.1 source code, explaining how something works (or how to fix a problem). The ASP.NET Core framework does a good job in preventing certain types of attacks from happening, but there are many more non-trivial projects that invariably require developers to think outside the box. For that, there is very little guidance on how to safely venture beyond the simple use cases. And worse, there is a lot of bad advice online on how to implement functionality, be it encrypting unsafely hard-code parameters that need to be generated at runtime, to articles that advocate for certain solutions that are vulnerable to obvious injection attacks. This book aims to train developers to avoid these problems. Unlike the vast majority of security books that are targeted to network administrators, system administrators, or managers, this book is targeted specifically to ASP.NET developers. The book begins by teaching developers how ASP.NET Core works behind the scenes, then talks about how various attacks are performed and how to prevent them. Finally, it dives into the concepts a developer needs to know to do some testing on their own without the help of a security professional. What You Will Learn Discern which attacks are easy to prevent in the framework and which are challenging Dig into ASP.NET Core 3.1 source code to understand how the security services work Establish a baseline for understanding how to design more secure software Properly apply cryptography in software development Take a deep dive into web security concepts Validate input in a way that allows legitimate traffic but blocks malicious traffic Understand parameterized queries and why they are so important to ASP.NET Core Fix issues in a well-implemented solution Know how logging works and its weaknesses in ASP.NET Core Incorporate security in every phase of the software development process Who This Book Is For Software developers who have experience creating websites in ASP.NET and want to know how to make their websites secure from hackers and security professionals who work with a development team that uses ASP.NET Core. A basic understanding of web technologies such as HTML, JavaScript, and CSS is assumed, as is knowledge of how to create a website, and how to read and write C#. You do not need knowledge of security concepts, even those that are often covered in ASP.NET Core documentation.




ASP.NET Core Security


Book Description

Secure your ASP.NET applications before you get hacked! This practical guide includes secure coding techniques with annotated examples and full coverage of built-in ASP.NET Core security tools. In ASP.NET Core Security, you will learn how to: Understand and recognize common web app attacks Implement attack countermeasures Use testing and scanning tools and libraries Activate built-in browser security features from ASP.NET Take advantage of .NET and ASP.NET Core security APIs Manage passwords to minimize damage from a data leak Securely store application secrets ASP.NET Core Security teaches you the skills and countermeasures you need to keep your ASP.NET Core apps secure from the most common web application attacks. With this collection of practical techniques, you will be able to anticipate risks and introduce practices like testing as regular security checkups. You’ll be fascinated as the author explores real-world security breaches, including rogue Firefox extensions and Adobe password thefts. The examples present universal security best practices with a sharp focus on the unique needs of ASP.NET Core applications. About the technology Your ASP.NET Core applications are under attack now. Are you ready? Th ere are specific countermeasures you can apply to keep your company out of the headlines. This book demonstrates exactly how to secure ASP.NET Core web applications, including safe browser interactions, recognizing common threats, and deploying the framework’s unique security APIs. About the book ASP.NET Core Security is a realistic guide to securing your web applications. It starts on the dark side, exploring case studies of cross-site scripting, SQL injection, and other weapons used by hackers. As you go, you’ll learn how to implement countermeasures, activate browser security features, minimize attack damage, and securely store application secrets. Detailed ASP.NET Core code samples in C# show you how each technique looks in practice. What's inside Understand and recognize common web app attacks Testing tools, helper libraries, and scanning tools Activate built-in browser security features Take advantage of .NET and ASP.NET Core security APIs Manage passwords to minimize damage from a data leak About the reader For experienced ASP.NET Core web developers. About the author Christian Wenz is a web pioneer, consultant, and entrepreneur. Table of Contents PART 1 FIRST STEPS 1 On web application security PART 2 MITIGATING COMMON ATTACKS 2 Cross-site scripting (XSS) 3 Attacking session management 4 Cross-site request forgery 5 Unvalidated data 6 SQL injection (and other injections) PART 3 SECURE DATA STORAGE 7 Storing secrets 8 Handling passwords PART 4 CONFIGURATION 9 HTTP headers 10 Error handling 11 Logging and health checks PART 5 AUTHENTICATION AND AUTHORIZATION 12 Securing web applications with ASP.NET Core Identity 13 Securing APIs and single page applications PART 6 SECURITY AS A PROCESS 14 Secure dependencies 15 Audit tools 16 OWASP Top 10







Pro ASP.NET Web API Security


Book Description

ASP.NET Web API is a key part of ASP.NET MVC 4 and the platform of choice for building RESTful services that can be accessed by a wide range of devices. Everything from JavaScript libraries to RIA plugins, RFID readers to smart phones can consume your services using platform-agnostic HTTP. With such wide accessibility, securing your code effectively needs to be a top priority. You will quickly find that the WCF security protocols you’re familiar with from .NET are less suitable than they once were in this new environment, proving themselves cumbersome and limited in terms of the standards they can work with. Fortunately, ASP.NET Web API provides a simple, robust security solution of its own that fits neatly within the ASP.NET MVC programming model and secures your code without the need for SOAP, meaning that there is no limit to the range of devices that it can work with – if it can understand HTTP, then it can be secured by Web API. These SOAP-less security techniques are the focus of this book. What you’ll learn Identity management and cryptography HTTP basic and digest authentication and Windows authentication HTTP advanced concepts such as web caching, ETag, and CORS Ownership factors of API keys, client X.509 certificates, and SAML tokens Simple Web Token (SWT) and signed and encrypted JSON Web Token (JWT) OAuth 2.0 from the ground up using JWT as the bearer token OAuth 2.0 authorization codes and implicit grants using DotNetOpenAuth Two-factor authentication using Google Authenticator OWASP Top Ten risks for 2013Who this book is for No prior experience of .NET security is needed to read this book. All security related concepts will be introduced from first-principles and developed to the point where you can use them confidently in a professional environment. A good working knowledge of and experience with C# and the .NET framework are the only prerequisites to benefit from this book. Table of Contents Welcome to ASP.NET Web API Building RESTful Services Extensibility Points HTTP Anatomy and Security Identity Management Encryption and Signing Custom STS through WIF Knowledge Factors Ownership Factors Web Tokens OAuth 2.0 Using Live Connect API OAuth 2.0 From the Ground Up OAuth 2.0 Using DotNetOpenAuth Two-Factor Authentication Security Vulnerabilities Appendix: ASP.NET Web API Security Distilled




Web API Development with ASP.NET Core 8


Book Description

Develop web API applications using design patterns, advanced customization, and cutting-edge technologies, such as SignalR, gRPC, and GraphQL, while leveraging powerful cloud platforms and tools to accelerate development Key Features Gain proficiency in building modern ASP.NET Core web API applications Develop the skills to effectively test, debug, and secure your web API applications Streamline development workflows and boost productivity with cloud computing platforms and industry-standard CI/CD tools Purchase of the print or Kindle book includes a free PDF eBook Book DescriptionWeb API applications have become increasingly significant in recent years, fueled by the ever-accelerating pace of technological advancements. However, with this rapid evolution comes the need to create web API apps that are not only functional but also adaptable, maintainable, and scalable to meet the demands of users and businesses alike. This book draws from the author’s immense technical expertise and decades of experience in software development to help you address this challenge head-on, equipping you with the knowledge and skills required to develop web API apps from scratch. By providing a deeper understanding of the various protocols implemented by ASP.NET Core, including RESTful, SignalR (WebSocket), gRPC, and GraphQL, supplemented by practical examples and optimization techniques, such as using middleware, testing, caching, and logging, this book offers invaluable insights for both newcomers as well as seasoned developers to meet modern web development requirements. Additionally, you’ll discover how to use cloud platforms such as Azure and Azure DevOps to enhance the development and operational aspects of your application. By the end of this book, you’ll be fully prepared to undertake enterprise-grade web API projects with confidence, harnessing the latest advancements in ASP.NET Core 8 to drive innovation.What you will learn Build a strong foundation in web API fundamentals Explore the ASP.NET Core 8 framework and other industry-standard libraries and tools for high-performance, scalable web APIs Apply essential software design patterns such as MVC, dependency injection, and the repository pattern Use Entity Framework Core for database operations and complex query creation Implement robust security measures to protect against malicious attacks and data breaches Deploy your application to the cloud using Azure and leverage Azure DevOps to implement CI/CD Who this book is for This book is for developers who want to learn how to build web APIs with ASP.NET Core and create flexible, maintainable, scalable applications with .NET platform. Basic knowledge of C#, .NET, and Git will assist with understanding the concepts more easily.




Building Web APIs with ASP.NET Core


Book Description

Build fully-featured APIs with ASP.NET Core! This all-practical guide is written like a real development project, taking you hands-on with modern APIs utilizing REST and GraphQL standards. In Building Web APIs with ASP.NET Core you will learn how to: Set up your environment with VS 2022, Node, Git, and more Create a ASP.NET Core project from scratch Integrate with SQL Server Use Entity Framework Core to set up a data model Create back-end controllers Design an API to serve data Write API documentation using Swagger and Swashbuckle Consume an API using typical web client-side frameworks Handle requests and routes using controllers and Minimal API Release and deploy your Web API in production on cloud-based hosting services such as MS Azure Building Web APIs with ASP.NET Core is a practical beginner’s guide to creating your first web APIs using ASP.NET Core. In it, you’ll develop an API that feeds web-based services, including websites and mobile apps, for a board games application. The book is cleverly structured to mirror a real-world development project, with each chapter introducing a new feature request. You’ll build your API with an ecosystem of ASP.NET Core tools that help simplify everything from setting up your data model to generating documentation. About the Technology Web APIs are the front door to an application, providing controlled access to its data and features. ASP.NET Core, Microsoft’s web framework, simplifies and accelerates API creation with powerful, developer-friendly features, including an innovative “no compile” coding experience. It is reliable, fast, free, open-source, and backed by Microsoft’s legendary support. About the Book Building Web APIs with ASP.NET Core teaches you how to write safe, maintainable, and performant REST APIs. It’s full of best practices for modern and classic API styles, including REST and GraphQL. You’ll love the groundbreaking Minimal API model that helps you build pro-quality APIs with just a few lines of code. Each chapter contains realistic user stories, backlog items, and development tasks. What’s Inside Create an ASP.NET Core project from scratch Set up a data model with Entity Framework Core Create backend controllers Design an API to serve data About the Reader For developers with some experience using the .NET Framework. About the Author Valerio De Sanctis has more than 20 years of experience in web development and project management using ASP.NET, PHP, and Java. Table of Contents PART 1 - GETTING STARTED 1 Web APIs at a glance 2 Our first web API project 3 RESTful principles and guidelines PART 2 - BASIC CONCEPTS 4 Working with data 5 CRUD operations 6 Data validation and error handling PART 3 - ADVANCED CONCEPTS 7 Application logging 8 Caching techniques 9 Authentication and authorization 10 Beyond REST PART 4 - TOWARD PRODUCTION 11 API documentation 12 Release and deployment




ASP.NET Core in Action, Third Edition


Book Description

Build professional-grade full-stack web applications using C# and ASP.NET Core. In ASP.NET Core in Action, Third Edition you’ll learn how to: Build minimal APIs for serving JSON to client-side applications Create dynamic, server-side rendered applications using Razor Pages User authentication and authorization Store data using Entity Framework Core Unit and integration tests for ASP.NET Core applications Write custom middleware and components Fully updated to ASP.NET Core 7.0! In ASP.NET Core in Action, Third Edition Microsoft MVP Andrew Lock teaches you how you can use your C# and .NET skills to build amazing cross-platform web applications. This revised bestseller reveals the latest .NET patterns, including minimal APIs and minimal hosting. Even if you've never worked with ASP.NET, you'll start creating productive cross-platform web apps fast. Illustrations and annotated code make learning visual and easy. About the technology The ASP.NET Core web framework delivers everything you need to build professional-quality web applications. With productivity-boosting libraries for server-side rendering, secure APIs, easy data access and more, you’ll spend your time implementing features instead of researching syntax and tracking down bugs. This book is your guide. About the book ASP.NET Core in Action, Third Edition shows you how to create production-grade web applications with ASP.NET Core 7.0. You’ll learn from hands-on examples, insightful illustrations, and nicely explained code. Updated coverage in this Third Edition includes creating minimal APIs, securing APIs with bearer tokens, WebApplicationBuilder, and more. About the reader For beginning to intermediate web developers. Examples are in C#. About the author Andrew Lock is a Microsoft MVP who has worked with ASP.NET Core since before its first release. Table of Contents 1 Getting started with ASP.NET Core 2 Understanding ASP.NET Core 3 Your first application 4 Handling requests with the middleware pipeline 5 Creating a JSON API with minimal APIs 6 Mapping URLs to endpoints using routing 7 Model binding and validation in minimal APIs 8 An introduction to dependency injection 9 Registering services with dependency injection 10 Configuring an ASP.NET Core application 11 Documenting APIs with OpenAPI 12 Saving data with Entity Framework Core 13 Creating a website with Razor Pages 14 Mapping URLs to Razor Pages using routing 15 Generating responses with page handlers in Razor Pages 16 Binding and validating requests with Razor Pages 17 Rendering HTML using Razor views 18 Building forms with Tag Helpers 19 Creating a website with MVC controllers 20 Creating an HTTP API using web API controllers 21 The MVC and Razor Pages filter pipeline 22 Creating custom MVC and Razor Page filters 23 Authentication: Adding users to your application with Identity 24 Authorization: Securing your application 25 Authentication and authorization for APIs 26 Monitoring and troubleshooting errors with logging 27 Publishing and deploying your application 28 Adding HTTPS to an application 29 Improving your application’s security 30 Building ASP.NET Core apps with the generic host and Startup 31 Advanced configuration of ASP.NET Core 32 Building custom MVC and Razor Pages components 33 Calling remote APIs with IHttpClientFactory 34 Building background tasks and services 35 Testing applications with xUnit 36 Testing ASP.NET Core applications