A presentation given at Plone Conference 2013 in Brasilia. This presentation explains Plone's Pluggable Authentication System (PAS) and how to get started with writing your own PAS Plugin.
A talk on integrating Plone and Sharepoint. This talk was from Plone Conference 2013 in Brasilia.
It covers integrating the authentication, content, and search between Plone and Sharepoint. It showcases the collective.cmsbrowser addon for Plone.
Open Source, The Natural Fit for Content Management in the EnterpriseMatt Hamilton
This is a talk I gave at "Adopting Open Source Software within the corporate ICT strategy" in London on 5th December 2013.
* How OSS reduces long term risk for CM
* Integrating with the unknown
* Authentication in heterogeneous environments
* Case study - NHS Health and Social Care Information Centre Intranet
The document provides instructions for creating folders in Microsoft SharePoint using MuleSoft and the Microsoft SharePoint connector. It discusses connecting to SharePoint Online or on-premise using different authentication methods. The steps show how to configure the Microsoft SharePoint global element with login credentials, create a Mule flow to call the connector operations to create a folder, and test the flow by running it and making an API call to create a folder in a SharePoint document library.
The document discusses how Silverlight applications work including domain services, metadata, data binding, and validations. Domain services expose business logic from the server to the client. WCF RIA services simplify building multi-tier applications by enabling client and server code sharing. Entities, validations, and other logic can be reused on both tiers. Data binding in Silverlight binds properties and paths on entities to UI elements. Validations can be done client-side or server-side using data annotation attributes.
Werzeug is a powerful WSGI utility library for Python that provides utilities like request and response objects, URL routing, and file uploads. It is the base for frameworks like Flask. Jinja2 is a template engine for Python that features automatic HTML escaping, template inheritance, and debugging integration. Flask is a web framework that uses Werzeug and Jinja2 and provides features like a development server, template support, and extensions for additional functionality.
This document provides an overview of new features and updates for December 2020, including converting external users to internal users, adding widgets to all communities, exporting wikis and files in HTML format, and managing external users and communities. It also lists additional use cases and resources on the Connections Administration Toolkit including more than 60 examples, detailed descriptions of problems and solutions, and instructional videos.
This document provides an introduction and overview of CodeIgniter, an open source PHP web application framework. It discusses why developers would use a framework like CodeIgniter, including benefits like basic building blocks, separation of concerns, and easier testing. It describes CodeIgniter's MVC architecture and some of its core classes for database access, input handling, loading resources, and more. The document concludes with basic steps for creating a first CodeIgniter application.
A talk on integrating Plone and Sharepoint. This talk was from Plone Conference 2013 in Brasilia.
It covers integrating the authentication, content, and search between Plone and Sharepoint. It showcases the collective.cmsbrowser addon for Plone.
Open Source, The Natural Fit for Content Management in the EnterpriseMatt Hamilton
This is a talk I gave at "Adopting Open Source Software within the corporate ICT strategy" in London on 5th December 2013.
* How OSS reduces long term risk for CM
* Integrating with the unknown
* Authentication in heterogeneous environments
* Case study - NHS Health and Social Care Information Centre Intranet
The document provides instructions for creating folders in Microsoft SharePoint using MuleSoft and the Microsoft SharePoint connector. It discusses connecting to SharePoint Online or on-premise using different authentication methods. The steps show how to configure the Microsoft SharePoint global element with login credentials, create a Mule flow to call the connector operations to create a folder, and test the flow by running it and making an API call to create a folder in a SharePoint document library.
The document discusses how Silverlight applications work including domain services, metadata, data binding, and validations. Domain services expose business logic from the server to the client. WCF RIA services simplify building multi-tier applications by enabling client and server code sharing. Entities, validations, and other logic can be reused on both tiers. Data binding in Silverlight binds properties and paths on entities to UI elements. Validations can be done client-side or server-side using data annotation attributes.
Werzeug is a powerful WSGI utility library for Python that provides utilities like request and response objects, URL routing, and file uploads. It is the base for frameworks like Flask. Jinja2 is a template engine for Python that features automatic HTML escaping, template inheritance, and debugging integration. Flask is a web framework that uses Werzeug and Jinja2 and provides features like a development server, template support, and extensions for additional functionality.
This document provides an overview of new features and updates for December 2020, including converting external users to internal users, adding widgets to all communities, exporting wikis and files in HTML format, and managing external users and communities. It also lists additional use cases and resources on the Connections Administration Toolkit including more than 60 examples, detailed descriptions of problems and solutions, and instructional videos.
This document provides an introduction and overview of CodeIgniter, an open source PHP web application framework. It discusses why developers would use a framework like CodeIgniter, including benefits like basic building blocks, separation of concerns, and easier testing. It describes CodeIgniter's MVC architecture and some of its core classes for database access, input handling, loading resources, and more. The document concludes with basic steps for creating a first CodeIgniter application.
Plone and Single-Sign On - Active Directory and the Holy GrailMatt Hamilton
This document discusses single sign-on authentication for Plone using Kerberos or Windows authentication. It describes how the netsight.windowsauthplugin allows Plone to authenticate users against Microsoft Active Directory without requiring separate username and password. The plugin uses Windows' SSPI API on Windows and MIT Kerberos libraries on other platforms. It then provides an example use case where it allowed users from two separate Active Directory domains to access a single Plone site without reauthenticating.
Plone Intranet talk at Plone Open Garden 2014, SorrentoMatt Hamilton
This is a talk I gave at Plone Open Garden 2014 on the Plone Intranet project. This is a collaborative project to develop an enhance platform for intranets on top of Plone
Adventures in Wonderland - A Plone Developer's Year in iOSMatt Hamilton
The slides from my talk at Plone Conference 2015 in Bucharest.
After 15 years of working purely in Python, I was thrown head-first into the world of iOS development. Taking over the management of a mobile app being developed for a Python web application, I've had to deal with managing iOS developers, understanding the iOS ecosystem, and working out Apple's byzantine procedures and processes.
This talk was given to the 2nd year MEng Computer Science students at the University of Bristol. It is a talk about my experiences in Open Source and working with a global community.
The audio and screencast of this presentation is at:
https://vimeo.com/113033350
A bit of a different format for BathCamp in June. We’ll be cage fighting.
No.
Actually, it’s a sort of follow on from our previous BathCamp – a comparison of as many CMS systems as we can get people to talk about.
Obviously any comparison of CMS system is heavily caveated with an “it depends…” but nonetheless we think it’ll be interesting to hear from people talking about the good, the bad and the ugly of the systems they use.
The format of the talks will be “5 things I love about this CMS and 5 things I hate”, followed by time for questions and general CMS-like banter.
We’ve got the following lined up:
WordPress
Drupal
Expression Engine
Plone
PyroCMS
Perch
Umbraco
Defacto
Supercharge Your Career with Open SourceMatt Hamilton
A talk I gave at the University of Bristol to the 2nd Year Computer Science Students on how to use Open Source Software to further your chances of getting a job. I draw upon the Plone community and software for examples.
This document discusses Pluggable Authentication Modules (PAM) and how they provide a flexible framework for authentication in Linux systems. PAM allows authentication methods to be configured per application using configuration files in /etc/pam.d. Common PAM modules like pam_unix, pam_rootok, and pam_tally2 are described along with their uses for authentication, authorization, password management, and session control. The document provides examples of configuring PAM for applications like SSHD to implement features like limited login attempts, time-based access restrictions, and auditing of user activities.
PAM (Pluggable Authentication Module) provides a common interface for authentication that allows system administrators to use a single authentication method across multiple applications and services. It implements a modular framework that applications can link to for authentication, with modules that handle authentication, account management, session management, and password management. PAM configurations specify stacks of modules that will be used in a given order for each management group for a service.
The document discusses various topics related to user security in Linux systems. It covers selecting strong passwords, managing passwords using tools like passwd and PAM, using utilities like sudo and vlock to control access, and seeing who is logged into the system. It emphasizes the importance of password security and provides tips for creating secure passwords.
Authentication Modules For Linux - PAM ArchitecturePriyank Kapadia
The document discusses the benefits of exercise for mental health. Regular physical activity can help reduce anxiety and depression and improve mood and cognitive function. Exercise causes chemical changes in the brain that may help protect against mental illness and improve symptoms.
An introduction to Zope Page Templates and their use outside of Zope (+Audio)Matt Hamilton
This document discusses Zope Page Templates (ZPT), which is an implementation of the Template Attribute Language (TAL). ZPT allows separating presentation from logic by using XML/TAL data and templates to generate XHTML or other formats. Some key features of TAL mentioned include making well-formed XHTML easy, optional tag omission, conditional inclusion, and internationalization support. The document provides examples of basic template usage and more advanced features like macros.
A talk I gave at the European Plone Symposium 2010 in Sorrento.
Event Driven Programming in Plone - or how to extend Plone the lazy way
Ever wanted to extend Plone somehow but not wanted to change the existing code for a product? Want to learn the easy way to extend Plone's functionality?
Events!
I will show you some examples of how to use Plone's event subscriber and workflow systems to extend Plone without having to change any existing products. Using a number of common Plone products and the events system to combine them you can come up with unlimited possibilities. I'll use examples from two websites I've been working on recently to show you how you can make authors have to pay (using GetPaid) to publish content on a site, and how to check the comments are not spam on your discussion board.
Mountain Tops to Archipelagos - The People Behind Plone (+AUDIO)Matt Hamilton
I was invited to give a talk at the Rotary Club Bristol about Plone. I spoke about the community and how an amazing group of people world wide gather across locations around the globe to develop software... and have a few beers in the process.
I'm afraid the audio quality is not that great, but hopefully you can turn the volume up and bit and still hear me
Code your Own: Authentication Provider for Blackboard LearnDan Rinzel
The document discusses authentication in Blackboard Learn and provides an example of extending authentication capabilities by creating a custom filter. It begins by explaining the different types of authentication providers in Blackboard Learn, including remote, delegated credential, and fully delegated providers. It then discusses changes in Service Pack 8, supported providers, and how the framework is built for extension. The document concludes by walking through a sample implementation of a custom filter that limits login attempts to prevent password guessing.
Implement Authorization in your Apps with Microsoft identity platform-June 2020Microsoft 365 Developer
Kalyan Krishna from Microsoft hosted a community call on implementing authorization in applications using features of the Microsoft Identity Platform like app roles, security groups, scopes, and directory roles. The call covered:
- Defining and assigning app roles to users and other apps to control permissions.
- Using security groups assigned to users to manage access and optionally returning group details in tokens.
- Configuring application groups to filter tokens to only include groups relevant to an application.
- Providing scopes or delegated permissions for public client applications to request access to resources.
- Directories roles for administering access in Azure AD tenants.
Agile methodologies based on BDD and CI by Nikolai ShevchenkoMoldova ICT Summit
BDD is an agile methodology that focuses on describing an application from stakeholders' perspectives using scenarios written in a common language like Gherkin. It revolves around user stories made up of scenarios and executable steps. This ensures collaboration between business analysts, QA teams, and developers. CI integrates source code and runs tests after each commit for near-immediate feedback to catch errors early. BDD and CI provide benefits like lower barriers to entry, greater ROI, and predictability through automated tests that validate business needs are met.
validation of user credentials in social network by using Django backend aut...izzatisholehah
1) The document discusses validation of user credentials in social networks using Django backend authentication. It aims to configure a Django framework platform for authentication, integrate token-based authentication, and test the backend authentication in a social network.
2) The problems with traditional username and password authentication are that it increases server overhead with many users authenticating and credentials can be accessed via HTTP requests. Token-based authentication is proposed to address these issues.
3) The proof of concept implements Django authentication with token-based authentication by installing Django/DRF, configuring the backend server, integrating token authentication, and connecting the backend to an API for social network credential validation.
This document discusses user authentication in Django. It covers setting up authentication with Django's auth application, creating user and profile models, adding login and registration views and templates, and restricting access with decorators. The key points are:
- Django's auth app provides user authentication functionality out of the box, including user models, permissions, and form/view tools.
- Additional user profile attributes can be added by creating a profile model with a one-to-one relationship to the user model.
- Registration is implemented with forms bound to the user and profile models, and a view to process registration and save to the database.
- Login functionality includes a form, view to authenticate and log in a user,
This document provides an overview of using JavaScript to enhance SharePoint experiences. It discusses why JavaScript is useful, best practices, and several JavaScript libraries that can be used with SharePoint including utility libraries, data access libraries, application frameworks, and UI libraries. It also demonstrates how to register JavaScript on all pages in Office 365 and provides examples of Angular, jQuery, DataJS, and SPServices.
Using API platform to build ticketing system (translations, time zones, ...) ...Antonio Peric-Mazar
Why is API platform a way to go and the new standard in developing apps? In this talk, I want to show you some real examples that we built using API platform including a ticketing system for the world’s biggest bicycle marathon and a social network that is a mixture of both Tinder and Facebook Messenger. We had to tackle problems regarding the implementation of tax laws in 18 different countries, dozens of translations (including Arabic), multiple role systems, different timezones, overall struggle with a complicated logic with an infinite number of branches, and more.
MongoDB.local Atlanta: Introduction to Serverless MongoDBMongoDB
Serverless development with MongoDB Stitch allows developers to build applications without managing infrastructure. Stitch provides four main services - QueryAnywhere for data access, Functions for server-side logic, Triggers for real-time notifications, and Mobile Sync for offline data synchronization. These services integrate with MongoDB and other data sources through a unified API, and apply access controls and filters to queries. Functions can be used to build applications or enable data services, and are integrated with application context including user information, services, and values. This allows developers to write code without dealing with deployment or scaling.
This document discusses ASP.NET security concepts including authentication, authorization, forms authentication, roles, profiles, and secure coding guidelines. It provides an overview of implementing forms authentication and authorization in ASP.NET, including configuring authentication in web.config, creating data stores, and setting authorization rules. It also covers using membership and roles providers to manage users and security programmatically. The document describes how to implement profiles to store additional user information and customize profile properties and data types. Sample code is provided for creating login/registration pages and managing security through ASP.NET.
Plone and Single-Sign On - Active Directory and the Holy GrailMatt Hamilton
This document discusses single sign-on authentication for Plone using Kerberos or Windows authentication. It describes how the netsight.windowsauthplugin allows Plone to authenticate users against Microsoft Active Directory without requiring separate username and password. The plugin uses Windows' SSPI API on Windows and MIT Kerberos libraries on other platforms. It then provides an example use case where it allowed users from two separate Active Directory domains to access a single Plone site without reauthenticating.
Plone Intranet talk at Plone Open Garden 2014, SorrentoMatt Hamilton
This is a talk I gave at Plone Open Garden 2014 on the Plone Intranet project. This is a collaborative project to develop an enhance platform for intranets on top of Plone
Adventures in Wonderland - A Plone Developer's Year in iOSMatt Hamilton
The slides from my talk at Plone Conference 2015 in Bucharest.
After 15 years of working purely in Python, I was thrown head-first into the world of iOS development. Taking over the management of a mobile app being developed for a Python web application, I've had to deal with managing iOS developers, understanding the iOS ecosystem, and working out Apple's byzantine procedures and processes.
This talk was given to the 2nd year MEng Computer Science students at the University of Bristol. It is a talk about my experiences in Open Source and working with a global community.
The audio and screencast of this presentation is at:
https://vimeo.com/113033350
A bit of a different format for BathCamp in June. We’ll be cage fighting.
No.
Actually, it’s a sort of follow on from our previous BathCamp – a comparison of as many CMS systems as we can get people to talk about.
Obviously any comparison of CMS system is heavily caveated with an “it depends…” but nonetheless we think it’ll be interesting to hear from people talking about the good, the bad and the ugly of the systems they use.
The format of the talks will be “5 things I love about this CMS and 5 things I hate”, followed by time for questions and general CMS-like banter.
We’ve got the following lined up:
WordPress
Drupal
Expression Engine
Plone
PyroCMS
Perch
Umbraco
Defacto
Supercharge Your Career with Open SourceMatt Hamilton
A talk I gave at the University of Bristol to the 2nd Year Computer Science Students on how to use Open Source Software to further your chances of getting a job. I draw upon the Plone community and software for examples.
This document discusses Pluggable Authentication Modules (PAM) and how they provide a flexible framework for authentication in Linux systems. PAM allows authentication methods to be configured per application using configuration files in /etc/pam.d. Common PAM modules like pam_unix, pam_rootok, and pam_tally2 are described along with their uses for authentication, authorization, password management, and session control. The document provides examples of configuring PAM for applications like SSHD to implement features like limited login attempts, time-based access restrictions, and auditing of user activities.
PAM (Pluggable Authentication Module) provides a common interface for authentication that allows system administrators to use a single authentication method across multiple applications and services. It implements a modular framework that applications can link to for authentication, with modules that handle authentication, account management, session management, and password management. PAM configurations specify stacks of modules that will be used in a given order for each management group for a service.
The document discusses various topics related to user security in Linux systems. It covers selecting strong passwords, managing passwords using tools like passwd and PAM, using utilities like sudo and vlock to control access, and seeing who is logged into the system. It emphasizes the importance of password security and provides tips for creating secure passwords.
Authentication Modules For Linux - PAM ArchitecturePriyank Kapadia
The document discusses the benefits of exercise for mental health. Regular physical activity can help reduce anxiety and depression and improve mood and cognitive function. Exercise causes chemical changes in the brain that may help protect against mental illness and improve symptoms.
An introduction to Zope Page Templates and their use outside of Zope (+Audio)Matt Hamilton
This document discusses Zope Page Templates (ZPT), which is an implementation of the Template Attribute Language (TAL). ZPT allows separating presentation from logic by using XML/TAL data and templates to generate XHTML or other formats. Some key features of TAL mentioned include making well-formed XHTML easy, optional tag omission, conditional inclusion, and internationalization support. The document provides examples of basic template usage and more advanced features like macros.
A talk I gave at the European Plone Symposium 2010 in Sorrento.
Event Driven Programming in Plone - or how to extend Plone the lazy way
Ever wanted to extend Plone somehow but not wanted to change the existing code for a product? Want to learn the easy way to extend Plone's functionality?
Events!
I will show you some examples of how to use Plone's event subscriber and workflow systems to extend Plone without having to change any existing products. Using a number of common Plone products and the events system to combine them you can come up with unlimited possibilities. I'll use examples from two websites I've been working on recently to show you how you can make authors have to pay (using GetPaid) to publish content on a site, and how to check the comments are not spam on your discussion board.
Mountain Tops to Archipelagos - The People Behind Plone (+AUDIO)Matt Hamilton
I was invited to give a talk at the Rotary Club Bristol about Plone. I spoke about the community and how an amazing group of people world wide gather across locations around the globe to develop software... and have a few beers in the process.
I'm afraid the audio quality is not that great, but hopefully you can turn the volume up and bit and still hear me
Code your Own: Authentication Provider for Blackboard LearnDan Rinzel
The document discusses authentication in Blackboard Learn and provides an example of extending authentication capabilities by creating a custom filter. It begins by explaining the different types of authentication providers in Blackboard Learn, including remote, delegated credential, and fully delegated providers. It then discusses changes in Service Pack 8, supported providers, and how the framework is built for extension. The document concludes by walking through a sample implementation of a custom filter that limits login attempts to prevent password guessing.
Implement Authorization in your Apps with Microsoft identity platform-June 2020Microsoft 365 Developer
Kalyan Krishna from Microsoft hosted a community call on implementing authorization in applications using features of the Microsoft Identity Platform like app roles, security groups, scopes, and directory roles. The call covered:
- Defining and assigning app roles to users and other apps to control permissions.
- Using security groups assigned to users to manage access and optionally returning group details in tokens.
- Configuring application groups to filter tokens to only include groups relevant to an application.
- Providing scopes or delegated permissions for public client applications to request access to resources.
- Directories roles for administering access in Azure AD tenants.
Agile methodologies based on BDD and CI by Nikolai ShevchenkoMoldova ICT Summit
BDD is an agile methodology that focuses on describing an application from stakeholders' perspectives using scenarios written in a common language like Gherkin. It revolves around user stories made up of scenarios and executable steps. This ensures collaboration between business analysts, QA teams, and developers. CI integrates source code and runs tests after each commit for near-immediate feedback to catch errors early. BDD and CI provide benefits like lower barriers to entry, greater ROI, and predictability through automated tests that validate business needs are met.
validation of user credentials in social network by using Django backend aut...izzatisholehah
1) The document discusses validation of user credentials in social networks using Django backend authentication. It aims to configure a Django framework platform for authentication, integrate token-based authentication, and test the backend authentication in a social network.
2) The problems with traditional username and password authentication are that it increases server overhead with many users authenticating and credentials can be accessed via HTTP requests. Token-based authentication is proposed to address these issues.
3) The proof of concept implements Django authentication with token-based authentication by installing Django/DRF, configuring the backend server, integrating token authentication, and connecting the backend to an API for social network credential validation.
This document discusses user authentication in Django. It covers setting up authentication with Django's auth application, creating user and profile models, adding login and registration views and templates, and restricting access with decorators. The key points are:
- Django's auth app provides user authentication functionality out of the box, including user models, permissions, and form/view tools.
- Additional user profile attributes can be added by creating a profile model with a one-to-one relationship to the user model.
- Registration is implemented with forms bound to the user and profile models, and a view to process registration and save to the database.
- Login functionality includes a form, view to authenticate and log in a user,
This document provides an overview of using JavaScript to enhance SharePoint experiences. It discusses why JavaScript is useful, best practices, and several JavaScript libraries that can be used with SharePoint including utility libraries, data access libraries, application frameworks, and UI libraries. It also demonstrates how to register JavaScript on all pages in Office 365 and provides examples of Angular, jQuery, DataJS, and SPServices.
Using API platform to build ticketing system (translations, time zones, ...) ...Antonio Peric-Mazar
Why is API platform a way to go and the new standard in developing apps? In this talk, I want to show you some real examples that we built using API platform including a ticketing system for the world’s biggest bicycle marathon and a social network that is a mixture of both Tinder and Facebook Messenger. We had to tackle problems regarding the implementation of tax laws in 18 different countries, dozens of translations (including Arabic), multiple role systems, different timezones, overall struggle with a complicated logic with an infinite number of branches, and more.
MongoDB.local Atlanta: Introduction to Serverless MongoDBMongoDB
Serverless development with MongoDB Stitch allows developers to build applications without managing infrastructure. Stitch provides four main services - QueryAnywhere for data access, Functions for server-side logic, Triggers for real-time notifications, and Mobile Sync for offline data synchronization. These services integrate with MongoDB and other data sources through a unified API, and apply access controls and filters to queries. Functions can be used to build applications or enable data services, and are integrated with application context including user information, services, and values. This allows developers to write code without dealing with deployment or scaling.
This document discusses ASP.NET security concepts including authentication, authorization, forms authentication, roles, profiles, and secure coding guidelines. It provides an overview of implementing forms authentication and authorization in ASP.NET, including configuring authentication in web.config, creating data stores, and setting authorization rules. It also covers using membership and roles providers to manage users and security programmatically. The document describes how to implement profiles to store additional user information and customize profile properties and data types. Sample code is provided for creating login/registration pages and managing security through ASP.NET.
SAP SECURITY training by yektek has unique content.
http://www.yektek.com/sap-security-online-training
SECURITY online Training will cover R3 security online training, BI security online training, HR security online training, CRM security online training, SRM Security online training and PORTAL security online training.
Five Things You Didn't Know About Firebase AuthPeter Friese
There’s no doubt about it: many apps need some way of authenticating the user, but most developers don’t get overly excited by the prospect of implementing a login/sign-up screen.
In this talk, you will learn what Firebase Auth is, why you should use it, and - if this didn’t get you excited yet - 5 things you probably didn’t know about Firebase Auth before.
In particular, we’re going to look at
- How Firebase Auth works, and why you should use it
- How to let users sign in without even having to come up with a password
- What Anonymous Auth is all about and why you should care
- How to make signing in on iOS more magical
How to Implement Token Authentication Using the Django REST FrameworkKaty Slemon
I'm sure you may also find it challenging while implementing token authentication using the Django Rest framework. so here is the solutions that help you out to solve the issue.
How to CASifying PeopleSoft and Integrating CAS and ADFSJohn Gasper
In this presentation we discuss how to CASify PeopleSoft, and also discuss some strategies on how to integrate Microsoft ADFS with CAS Server to have a single SSO experience for your end users.
Azure Networking, Azure Storage, Enterprise Azure Active Directory, Daemon or Server application authentication workflow, Worker processes, Daemon, Daemon application to Web API, Azure Active Directory in old azure portal, ASM, Azure active directory and Mutl-tenant applications, Sharding, Federation, Shared singe, RBAC, Differences between AAD and AD DS, Azure AD Subscription models, Azure Domain Names, Manage Users, Groups,Co-Admin Role, Default Azure Active Directory, Adding access to another azure subscription. Contributor, Owner , Roles in Azure Subscriptions, Roles, MFA, Multi-Factor Authentication, How does MFA works, Scenarios for Azure MFA, Setting up MFA in Azure AD, Setting MFA, Azure Authenticator, Hybrid AD solutions, AD DS, Federated Trust, Domain Controller, AD, AAD Connecter, AD FS, AAD, Active Directory Password synchronization, Benefits of Active Directory, Active Directory Replication, vulnerabilities with multiple Domain Controller, Azure AD features, Synchronization with AD Connect, Write-back policies, Azure AD Health COnnect, Installing Azure AD COnnect Health,Integrating Azure AD and SaaS Applications, Benefits of using SaaS Solutions with your products, Benefits of SaaS Solutions, Azure Marketplace, DropBox Integrations with AAD, New Relic Integrations, New Relic, Dropbox, Azure AD Enterprise Application, VSTS integration for Automated Builds, Federation Overview, Claims, Single Sign On, Federated Trusts, Claim based authentications, Federated trusts, Claims Processing, Web Application Proxy, ADFS Proxy, ADFS 2.0 Proxy, How does ADFS proxy works for internal users, How does ADFS proxy works for internal users,Azure AD B2C Directory, B2C applications, Business 2 Customers application, 3rd Party Authentication, Bearer Token, OAuth, 3rd Party Identity Provider, OAuth server, Azure AD B2C Authentication & Authorization, Implementing Azure AD B2C Directory, Setting up Single Sign On with Facebook, Google, Microsoft. Linkedin, SignUP Policies, SignIN Policies, Email SignUp, SignUpSignIN PolicyID, Configuring Application with Azure Application ID,Modern Applications, Requirements for Modern Apps, API, Logic Applications, Mobile App, Web App, Function App, Go To Market, Microsoft Application Platform, App Service Plan, App Service Environment - Private Infrastructure, Why use App Service, App service Features & Capabilities, Azure App Service, Virtual Machine, Service Fabric & Cloud Services Comparison, Creating a Mobile App, Swagger UI, API Apps, API management, API APPS & API Management, Implementing API APP via Visual Studio,
Complex architectures for authentication and authorization on AWSBoyan Dimitrov
In this talk we discuss key architecture patterns for designing authentication and authorization solutions in complex microservices environments. We focus on the key advantages and capabilities of AWS Cognito User Pools and Federated Identities and explore how this service can address the challenges of implementing client to service, service to service and service to infrastructure auth.
In addition, we discuss patterns and best practices around building a highly available and resilient decentralised authorization solution for microservices environments based on OIDC. We present a simple RBAC implementation together with fine-grained permissions and end to end automation.
Evolving your Data Access with MongoDB Stitch - Drew Di PalmaMongoDB
You have valuable data in MongoDB and while it's important to use that data to empower your users and customers it can be tough to do so in a safe, secure way. In this session, you'll learn how to simply connect your users with the data they need using MongoDB Stitch.
Identity Management for Your Users and Apps: A Deep Dive on Amazon Cognito - ...Amazon Web Services
Learn how to set up an end-user directory, secure sign-up and sign-in, manage user profiles, authenticate and authorize your APIs, federate from enterprise and social identity providers, and use OAuth to integrate with your app—all without any server setup or code. With clear blueprints, we show you how to leverage Amazon Cognito to administer and secure your end users and enable identity for the applied patterns of mobile, web, and enterprise apps.
Managing Identity and Securing Your Mobile and Web Applications with Amazon C...Amazon Web Services
Amazon Cognito lets you easily add user sign-up and sign-in to your mobile and web apps. Finding the right identity solution can often be challenging. In this session, we will look at how Cognito can support a wide range of authentication scenarios including customers, employees and systems to help you make the right choices.
Speaker: Stephen Liedig. Solutions Architect. Amazon Web Services
Level: 300
Community call: Develop multi tenant apps with the Microsoft identity platformMicrosoft 365 Developer
Building an application that can be provisioned and used in multiple Azure AD tenants goes far beyond just flipping a switch in your app configuration. The developer has to undertake application provisioning, decide on a provisioning strategy, push changes to customers, manage identities flowing from multiple tenants, collect essential information from authentication signals, learn to differentiate the different types of users they will encounter and understand the key differences from the B2B scenarios. In this community call, Kalyan Krishnan reviews the steps and considerations required to develop, configure, provision, and manage multi-tenant applications.
For more information, visit https://aka.ms/identityplatform
The document discusses using the "Five W's" technique to refine user stories and gather more complete requirements. It provides an example user story for logging into a system and refines it using Five W's, which involves defining the who, what, when, where, and why. This reduces the original user story into three smaller stories around logging in, registering, and password recovery. It demonstrates how Five W's can help capture additional details to avoid epic user stories and more clearly define acceptance criteria and the definition of done.
Similaire à How to get started with the Pluggable Authentication System (20)
Ceci n’est pas un canard - Machine Learning and Generative Adversarial NetworksMatt Hamilton
A talk at the Thursdays Matter skillscast session. This talk is about how Generative Adversarial Networks (GANs) work and their uses from predicting financial data to upscaling old video. I also talk about some of the countermeasures being developed to combat facial recognition online.
A video recording of this talk is available at:
https://skillsmatter.com/skillscasts/14837-ceci-n-est-pas-un-canard-machine-learning-and-generative-adversarial-networks
Ceci N'est Pas Un Canard – and Other Machine Learning StoriesMatt Hamilton
These are slides from a talk given remotely to a Computer Science class at Samford University, Alabama.
The talk is about some practical fun examples of some recent exploration I've been doing with machine learning and AI. Using Generative Adversarial Networks (GANs) to generate new images. And using Reinforcement Learning for applications such as financial trading.
This was a talk given at the SW Mobile developer meetup in Bristol. It is intended as an overview of machine learning and AI and to give developers the vocabulary they need to start looking into using machine learning techniques and artificial intelligence in their projects.
Mistakes Made and Lessons Learnt Scaling Plone post-LaunchMatt Hamilton
This is a run down of the mistakes we made and the lessons we learnt trying to scale a big Plone site with un-anticipated traffic once the site had gone live and the budget all been spent. Find out what we did wrong, and how we fixed it.
Plone Symposium East 2011 Keynote: Plone, A Solution not a ProductMatt Hamilton
Abstract: Looking at the market for content management systems, there are a whole slew of products out there, both proprietary and Open Source. Typically people choose a product from a vendor and then have to find a implementation company to implement it for them. With Plone the implementation company *is* the vendor. But unlike proprietary single-vendor solutions, Plone has hundreds of companies and individuals worldwide that can help you implement Plone. Sometimes we take for granted just what an amazing community we have and its diversity both geographically and in different industries. In this keynote I am going to look at Plone and its use around the world and the community that makes it so special
The Flexibility of Open Source - Plone in the Public SectorMatt Hamilton
A talk given by Matt Hamilton, Technical Director of Netsight.
This talk was part of the British Computer Society (BCS) event "Public Funds in the UK: Open Source for Document and Content Management" held in London on 7th January 2010.
http://ossg.bcs.org/category/ossg/ossg-events/
The talk is a case study of two specific public sector clients of the Open Source WCM, Plone: Warwickshire Police, and a large educational portal.
The Flexibility of Open Source: A Case Study of a large Corporate IntranetMatt Hamilton
The advantages of Open Source systems go beyond simple cost savings. Content management by its very nature requires a significant level of customisation and integration to meet business requirements. By not prohibiting the inspection and modification of the source code, Open Source enables a level of flexibility not available with proprietary systems.
This talk will present a case study of the process one corporation, Belron®, went through in the development of a corporate Intranet based on Plone. Belron® is the world's largest vehicle glass repair and replacement company, owning some of the best known brands in the industry including Carglass®, Autoglass®, O'Brien® and Safelite®. Belron® employs more than 19, 500 people working in 28 countries worldwide.
In this talk you will see how the flexibility of Open Source allowed an initial modest Intranet to adapt and grow over time to an organisation's evolving requirements, and the development of multiple sub-sites, specific business processes and multilingual support. You will also see how Open Source's licensing model allows un-fettered growth and deployment of the Intranet to multiple countries.
Plone - Revised Roadmap: Plone 3,4,5 and beyond - Dutch Plone Users Day (+AUDIO)Matt Hamilton
A presentation to the Dutch Plone User Day (Gebruikersdag) in Arnhem, Netherlands in Sept 2009.
This roadmap details the current state of Plone, and the plan for the upcoming release of Plone 4 and the future Plone 5.
Dynamically skinning a legacy portal using Python, WSGI (the Python Web Server Gateway Interface), and Deliverance.
So you have a big legacy portal application which you want to change the look of, but are contractually not allowed to touch?
Here is a case study on how we used the power and flexibility of Python and WSGI and the wonder lxml to dynamically re-skin a proprietary .NET portal without even touching it.
We take a giant lump of messy invalid HTML markup and dynamically strip it back, add semantic markup and CSS and present the user with a nice svelte valid site.
I will cover the history of the legacy portal, the problems encountered, our cunning plan to dynamically re-skin the site, a technical overview of the parts of the system (lxml, WSGI, etc), and what we learned along the way.
Lipstick on a Pig - European Plone Symposium 2009Matt Hamilton
A talk I gave at the European Plone Symposium 2009 in Sorrento
So you have a big legacy portal application which you want to change the look of, but are contractually not allowed to touch? Here is a case study on how we used the power and flexibility of python and wsgi and the wonder of lxml to dynamically re-skin a proprietary .NET portal without even touching it. We take a giant lump of messy invalid HTML markup and dynamically strip it back, add semantic markup and CSS and present the user with a nice svelte valid site.
Kent Connects: Harnessing Open Source for Shared Services and Partnership Wor...Matt Hamilton
Debbie Wisdom, Strategic Director, Kent Connects and Matt Hamilton, Technical Director, Netsight Internet Solutions and international board director of the Plone Foundation.
Kent Connects, the lead technology partnership in Kent & Medway, are using Plone Content Management System to provide partners from different public sector organisations with a flexible, virtual online space to collaborate and share information and knowledge via the internet in a secure way. Learn how Kent Connects came to be using Plone and what the benefits, issues and lessons learnt have been in adopting OSS for the partnership. Find out more about Plone, its community of practice and the opportunities it can offer the public sector.
The Broadband Media Exchange (BMEX):
- Was founded in 2002 by local media companies and runs as a not-for-profit consortium funded by membership subscriptions.
- Provides technical infrastructure like high-speed fiber links and Ethernet networking to connect media companies.
- Has supported numerous film and television productions over the years by allowing clients to securely review and approve media files over its network.
Open Source and Content Management (+audio)Matt Hamilton
Open Source solutions are becoming more commonplace in corporate IT, with two thirds of companies using Open Source today or planning to use it soon. We've all heard the hype: cheaper to buy, cheaper to run, cheaper to fix. Using Open Source software reduces your risks. But how does this translate to the world of Content Management?
The advantages of Open Source systems go beyond simple cost savings. Content management by its very nature requires a significant level of customisation and integration to meet business requirements. By not prohibiting the inspection and modification of the source code, Open Source enables a level of flexibility not available with proprietary systems.
Open Source enables you to leverage a culture of trust and openness, rather than secrecy. By having access to the source code, a customer can be safe in the knowledge that everything that the software vendor was intended to deliver can be independently verified.
In this talk you will learn how the Open Source community works, how its distributed nature makes it more resilient, and how you can become a part of it and benefit. We will cover the key criteria to consider when evaluating which Open Source CMS is the right fit for your requirements.
Removing Uninteresting Bytes in Software FuzzingAftab Hussain
Imagine a world where software fuzzing, the process of mutating bytes in test seeds to uncover hidden and erroneous program behaviors, becomes faster and more effective. A lot depends on the initial seeds, which can significantly dictate the trajectory of a fuzzing campaign, particularly in terms of how long it takes to uncover interesting behaviour in your code. We introduce DIAR, a technique designed to speedup fuzzing campaigns by pinpointing and eliminating those uninteresting bytes in the seeds. Picture this: instead of wasting valuable resources on meaningless mutations in large, bloated seeds, DIAR removes the unnecessary bytes, streamlining the entire process.
In this work, we equipped AFL, a popular fuzzer, with DIAR and examined two critical Linux libraries -- Libxml's xmllint, a tool for parsing xml documents, and Binutil's readelf, an essential debugging and security analysis command-line tool used to display detailed information about ELF (Executable and Linkable Format). Our preliminary results show that AFL+DIAR does not only discover new paths more quickly but also achieves higher coverage overall. This work thus showcases how starting with lean and optimized seeds can lead to faster, more comprehensive fuzzing campaigns -- and DIAR helps you find such seeds.
- These are slides of the talk given at IEEE International Conference on Software Testing Verification and Validation Workshop, ICSTW 2022.
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024Neo4j
Neha Bajwa, Vice President of Product Marketing, Neo4j
Join us as we explore breakthrough innovations enabled by interconnected data and AI. Discover firsthand how organizations use relationships in data to uncover contextual insights and solve our most pressing challenges – from optimizing supply chains, detecting fraud, and improving customer experiences to accelerating drug discoveries.
How to Get CNIC Information System with Paksim Ga.pptxdanishmna97
Pakdata Cf is a groundbreaking system designed to streamline and facilitate access to CNIC information. This innovative platform leverages advanced technology to provide users with efficient and secure access to their CNIC details.
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfMalak Abu Hammad
Discover how MongoDB Atlas and vector search technology can revolutionize your application's search capabilities. This comprehensive presentation covers:
* What is Vector Search?
* Importance and benefits of vector search
* Practical use cases across various industries
* Step-by-step implementation guide
* Live demos with code snippets
* Enhancing LLM capabilities with vector search
* Best practices and optimization strategies
Perfect for developers, AI enthusiasts, and tech leaders. Learn how to leverage MongoDB Atlas to deliver highly relevant, context-aware search results, transforming your data retrieval process. Stay ahead in tech innovation and maximize the potential of your applications.
#MongoDB #VectorSearch #AI #SemanticSearch #TechInnovation #DataScience #LLM #MachineLearning #SearchTechnology
Dr. Sean Tan, Head of Data Science, Changi Airport Group
Discover how Changi Airport Group (CAG) leverages graph technologies and generative AI to revolutionize their search capabilities. This session delves into the unique search needs of CAG’s diverse passengers and customers, showcasing how graph data structures enhance the accuracy and relevance of AI-generated search results, mitigating the risk of “hallucinations” and improving the overall customer journey.
In his public lecture, Christian Timmerer provides insights into the fascinating history of video streaming, starting from its humble beginnings before YouTube to the groundbreaking technologies that now dominate platforms like Netflix and ORF ON. Timmerer also presents provocative contributions of his own that have significantly influenced the industry. He concludes by looking at future challenges and invites the audience to join in a discussion.
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...SOFTTECHHUB
The choice of an operating system plays a pivotal role in shaping our computing experience. For decades, Microsoft's Windows has dominated the market, offering a familiar and widely adopted platform for personal and professional use. However, as technological advancements continue to push the boundaries of innovation, alternative operating systems have emerged, challenging the status quo and offering users a fresh perspective on computing.
One such alternative that has garnered significant attention and acclaim is Nitrux Linux 3.5.0, a sleek, powerful, and user-friendly Linux distribution that promises to redefine the way we interact with our devices. With its focus on performance, security, and customization, Nitrux Linux presents a compelling case for those seeking to break free from the constraints of proprietary software and embrace the freedom and flexibility of open-source computing.
Pushing the limits of ePRTC: 100ns holdover for 100 daysAdtran
At WSTS 2024, Alon Stern explored the topic of parametric holdover and explained how recent research findings can be implemented in real-world PNT networks to achieve 100 nanoseconds of accuracy for up to 100 days.
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfPaige Cruz
Monitoring and observability aren’t traditionally found in software curriculums and many of us cobble this knowledge together from whatever vendor or ecosystem we were first introduced to and whatever is a part of your current company’s observability stack.
While the dev and ops silo continues to crumble….many organizations still relegate monitoring & observability as the purview of ops, infra and SRE teams. This is a mistake - achieving a highly observable system requires collaboration up and down the stack.
I, a former op, would like to extend an invitation to all application developers to join the observability party will share these foundational concepts to build on:
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
How to get started with the Pluggable Authentication System
1. How to get started with
Matt Hamilton
The Pluggable
Authentication System
Plone Conference 2013 - Brasilia
2. Plone Conference 2013 - Brasilia
Who am I?
• Working with Plone/Zope since 1999
• Director at Netsight in the UK
• Worked on a number of projects doing
authentication over the years
7. Plone Conference 2013 - Brasilia
Architecture
• Uses the Zope Component Architecture
(ZCA) heavily
• Many interfaces, each defining an aspect of
the authentication process
• Each plugin can implement one or more
interfaces
8. Plone Conference 2013 - Brasilia
Anonymoususerfactory Plugins
Create anonymous users.
Authentication Plugins
Authentication plugins are responsible for validating credentials
generated by the Extraction Plugin.
Challenge Plugins
Challenge plugins initiate a challenge to the user to provide credentials.
Challenge_Protocol_Chooser Plugins
Challenge Protocol Chooser plugins decide what authorizationprotocol to
use for a given request type.
Reset Credentials Plugins
Credential clear plugins respond to a user logging out.
Update Credentials Plugins
Credential update plugins respond to the user changing credentials.
Extraction Plugins
Extraction plugins are responsible for extracting credentials from the
request.
Group_Enumeration Plugins
Enumeration plugins allow querying groups by ID.
Group_Introspection Plugins
Group Introspection provides listings of groups and membership
Group_Management Plugins
Group Management provides add/write/deletion of groups and member
management
Groups Plugins
Groups plugins determine the groups to which a user belongs.
Local_Roles Plugins
Defines Policy for getting Local Roles
Notcompetent Plugins
Not-Competent plugins check whether this user folder should not
authenticate the current request. These plugins are not used for a top
level user folder. They are typically used to prevent shaddowing of
authentications by higher level user folders.
Properties Plugins
Properties plugins generate property sheets for users.
Request_Type_Sniffer Plugins
Request Type Sniffer plugins detect the type of an incoming
request.
Role_Assigner Plugins
Role Assigner plugins allow the Pluggable Auth Service to
assign roles to principals.
Role_Enumeration Plugins
Enumeration plugins allow querying roles by ID.
Roles Plugins
Roles plugins determine the global roles which a user has.
Update Plugins
Update plugins allow the user or the application to update the
user's properties.
User_Adder Plugins
User Adder plugins allow the Pluggable Auth Service to create
users.
User_Enumeration Plugins
Enumeration plugins allow querying users by ID, and
searching for users who match particular criteria.
Userfactory Plugins
Create users.
User_Introspection Plugins
The User Introspection plugins allow the Pluggable Auth
Service to provide lists of users
User_Management Plugins
The User Management plugins allow the Pluggable Auth
Service to add/delete/modify users
Validation Plugins
Validation plugins specify allowable values for user properties
(e.g., minimum password length, allowed characters, etc.)
9. Plone Conference 2013 - Brasilia
Interfaces
class IExtractionPlugin( Interface ):
""" Extracts login name and credentials from a request.
"""
def extractCredentials( request ):
""" request -> {...}
o Return a mapping of any derived credentials.
o Return an empty mapping to indicate that the plugin found no
appropriate credentials.
"""
10. Plone Conference 2013 - Brasilia
Interfaces
class IAuthenticationPlugin( Interface ):
""" Map credentials to a user ID.
"""
def authenticateCredentials( credentials ):
""" credentials -> (userid, login)
o 'credentials' will be a mapping, as returned by IExtractionPlugin.
o Return a tuple consisting of user ID (which may be different
from the login name) and login
o If the credentials cannot be authenticated, return None.
"""
11. Plone Conference 2013 - Brasilia
Interfaces
class IPropertiesPlugin( Interface ):
""" Return a property set for a user.
"""
def getPropertiesForUser( user, request=None ):
""" user -> {}
o User will implement IPropertiedUser.
o Plugin should return a dictionary or an object providing
IPropertySheet.
o Plugin may scribble on the user, if needed (but must still
return a mapping, even if empty).
o May assign properties based on values in the REQUEST object, if
present
"""
12. Plone Conference 2013 - Brasilia
Interfaces
class IGroupsPlugin( Interface ):
""" Determine the groups to which a user belongs.
"""
def getGroupsForPrincipal( principal, request=None ):
""" principal -> ( group_1, ... group_N )
o Return a sequence of group names to which the principal
(either a user or another group) belongs.
o May assign groups based on values in the REQUEST object, if present
"""
13. Plone Conference 2013 - Brasilia
Plugins
• Plugins can be stacked in order you want
them to be used
17. Plone Conference 2013 - Brasilia
Worked Example
• netsight.aspxauthplugin
• Encrypts/Decrypts the .ASPXAUTH cookie
used by .NET applications
• Allows Plone to trust the auth of a .NET
application and vice-versa
• Simplified, ignoring some of the boiler plate
and crypto code
18. Plone Conference 2013 - Brasilia
def extractCredentials( self, request )
“””To extract the cookie from the browser”””
def authenticateCredentials( self,
credentials )
“””To decrypt the cookie and validate it is correct”””
def resetCredentials(self, request,
response)
“””To delete the cookie on logout”””
20. Plone Conference 2013 - Brasilia
security.declarePrivate( 'authenticateCredentials' )
def authenticateCredentials( self, credentials ):
request = self.REQUEST
response = request.RESPONSE
# We only authenticate when our challenge mechanism
# extracted the cookie
if credentials.get('plugin') != self.getId():
return None
cookie = credentials.get('cookie')
if not cookie:
return None
sig, data = self.decodeCookie(cookie)
21. Plone Conference 2013 - Brasilia
# check signature is valid
if not self.checkSignature(data,sig):
return None
# decrypt data
decryptedBytes = self.decryptData(data)
if not decryptedBytes:
return None
# unpack the values from the data
unpacked = self.unpackData(decryptedBytes)
if unpacked is None:
return None
start_time, end_time, username, version, persistent,
userdata, path = unpacked
# return the userid and login
return username, username